)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":2537,"name":"Nikhil Komawar","email":"nik.komawar@gmail.com","username":"nikhil-komawar"},"change_message_id":"3d8ba0fc0c8a777898cfaa911a758f8e23ebdb1f","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Fei Long Wang \u003cflwang@catalyst.net.nz\u003e"},{"line_number":5,"context_line":"CommitDate: 2014-06-12 18:34:39 +1200"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Enable tasks for Glance client against async workers"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Add tasks operations on client side to support task create,"},{"line_number":10,"context_line":"list all and show."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":15,"id":"1ae5cdf2_2d5f6610","line":7,"updated":"2014-06-12 13:59:05.000000000","message":"While you are working on it, can you please rename the title to \n\n\"Adds support for Glance Tasks calls\" ?\n\nA critical reason why we should do this is because the client does not know about the async workers (which are part of the execution logic). Glance REST API and the client support only making calls to the API exposed.\n\nWhat do you think?","commit_id":"ac2c999186a16f86a3088da88f37dc2434610755"},{"author":{"_account_id":6484,"name":"Feilong Wang","email":"hustemb@gmail.com","username":"flwang"},"change_message_id":"d1682b27130b75f5e41448046ed07e1b8c5a9e0a","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Fei Long Wang \u003cflwang@catalyst.net.nz\u003e"},{"line_number":5,"context_line":"CommitDate: 2014-06-12 18:34:39 +1200"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Enable tasks for Glance client against async workers"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Add tasks operations on client side to support task create,"},{"line_number":10,"context_line":"list all and show."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":15,"id":"1ae5cdf2_02f42759","line":7,"in_reply_to":"1ae5cdf2_2d5f6610","updated":"2014-06-12 22:28:05.000000000","message":"Make sense for me.","commit_id":"ac2c999186a16f86a3088da88f37dc2434610755"}],"glanceclient/v2/shell.py":[{"author":{"_account_id":177,"name":"Alex Meade","email":"mr.alex.meade@gmail.com","username":"alex-meade"},"change_message_id":"ca589e72c4671a040a40b6e7ad26a261aaee0c54","unresolved":false,"context_lines":[{"line_number":269,"context_line":"           help\u003d\u0027Filter tasks to those that have this status.\u0027)"},{"line_number":270,"context_line":"@utils.arg(\u0027--status\u0027, metavar\u003d\u0027\u003cSTATUS\u003e\u0027,"},{"line_number":271,"context_line":"           help\u003d\u0027Filter tasks to those that have this status.\u0027)"},{"line_number":272,"context_line":"@utils.arg(\u0027--owner\u0027, default\u003dNone, metavar\u003d\u0027\u003cTENANT_ID\u003e\u0027,"},{"line_number":273,"context_line":"           help\u003d\u0027Display only tasks owned by this tenant id. Filtering \u0027"},{"line_number":274,"context_line":"                \u0027occurs on the client side so may be inefficient. This option \u0027"},{"line_number":275,"context_line":"                \u0027is mainly intended for admin use. Use an empty string (\\\u0027\\\u0027) \u0027"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAUX%2F%2BVOU%3D","line":272,"updated":"2014-02-21 20:27:43.000000000","message":"It doesn\u0027t seem like the filtering for this occurs on the client side.","commit_id":"268302886e31dd7634cf1b93a2d8f6ed4421a089"},{"author":{"_account_id":6484,"name":"Feilong Wang","email":"hustemb@gmail.com","username":"flwang"},"change_message_id":"0a5be492759d2f328afca3c0179ac156bc3a8b8b","unresolved":false,"context_lines":[{"line_number":269,"context_line":"           help\u003d\u0027Filter tasks to those that have this status.\u0027)"},{"line_number":270,"context_line":"@utils.arg(\u0027--status\u0027, metavar\u003d\u0027\u003cSTATUS\u003e\u0027,"},{"line_number":271,"context_line":"           help\u003d\u0027Filter tasks to those that have this status.\u0027)"},{"line_number":272,"context_line":"@utils.arg(\u0027--owner\u0027, default\u003dNone, metavar\u003d\u0027\u003cTENANT_ID\u003e\u0027,"},{"line_number":273,"context_line":"           help\u003d\u0027Display only tasks owned by this tenant id. Filtering \u0027"},{"line_number":274,"context_line":"                \u0027occurs on the client side so may be inefficient. This option \u0027"},{"line_number":275,"context_line":"                \u0027is mainly intended for admin use. Use an empty string (\\\u0027\\\u0027) \u0027"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAWH%2F%2Fkm0%3D","line":272,"in_reply_to":"AAAAUX%2F%2BVOU%3D","updated":"2014-03-16 15:22:28.000000000","message":"Done","commit_id":"268302886e31dd7634cf1b93a2d8f6ed4421a089"},{"author":{"_account_id":177,"name":"Alex Meade","email":"mr.alex.meade@gmail.com","username":"alex-meade"},"change_message_id":"ca589e72c4671a040a40b6e7ad26a261aaee0c54","unresolved":false,"context_lines":[{"line_number":288,"context_line":"    kwargs[\u0027sort_dir\u0027] \u003d args.sort_dir"},{"line_number":289,"context_line":""},{"line_number":290,"context_line":"    tasks \u003d gc.tasks.list(**kwargs)"},{"line_number":291,"context_line":"    # NOTE (flwang): Given the format of task input is random, so it won\u0027t be"},{"line_number":292,"context_line":"    # displayed with task list."},{"line_number":293,"context_line":"    columns \u003d [\u0027ID\u0027, \u0027Type\u0027, \u0027Status\u0027, \u0027Owner\u0027]"},{"line_number":294,"context_line":"    utils.print_list(tasks, columns)"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAUX%2F%2BVNw%3D","line":291,"updated":"2014-02-21 20:27:43.000000000","message":"I\u0027m not sure what this note means exactly? Can you make it a bit clearer?","commit_id":"268302886e31dd7634cf1b93a2d8f6ed4421a089"},{"author":{"_account_id":5347,"name":"Eddie Sheffield","email":"eddie.sheffield@rackspace.com","username":"eddie-sheffield"},"change_message_id":"533a2b2f79e41db45a5c89f23ceea158fda8fbb5","unresolved":false,"context_lines":[{"line_number":288,"context_line":"    kwargs[\u0027sort_dir\u0027] \u003d args.sort_dir"},{"line_number":289,"context_line":""},{"line_number":290,"context_line":"    tasks \u003d gc.tasks.list(**kwargs)"},{"line_number":291,"context_line":"    # NOTE (flwang): Given the format of task input is random, so it won\u0027t be"},{"line_number":292,"context_line":"    # displayed with task list."},{"line_number":293,"context_line":"    columns \u003d [\u0027ID\u0027, \u0027Type\u0027, \u0027Status\u0027, \u0027Owner\u0027]"},{"line_number":294,"context_line":"    utils.print_list(tasks, columns)"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAVn%2F%2Fm%2FA%3D","line":291,"updated":"2014-03-05 03:30:32.000000000","message":"Look into the recent partial tasks work which was merged after this patch was started. I don\u0027t think the input is even included with a task list now.","commit_id":"268302886e31dd7634cf1b93a2d8f6ed4421a089"},{"author":{"_account_id":6484,"name":"Feilong Wang","email":"hustemb@gmail.com","username":"flwang"},"change_message_id":"0a5be492759d2f328afca3c0179ac156bc3a8b8b","unresolved":false,"context_lines":[{"line_number":288,"context_line":"    kwargs[\u0027sort_dir\u0027] \u003d args.sort_dir"},{"line_number":289,"context_line":""},{"line_number":290,"context_line":"    tasks \u003d gc.tasks.list(**kwargs)"},{"line_number":291,"context_line":"    # NOTE (flwang): Given the format of task input is random, so it won\u0027t be"},{"line_number":292,"context_line":"    # displayed with task list."},{"line_number":293,"context_line":"    columns \u003d [\u0027ID\u0027, \u0027Type\u0027, \u0027Status\u0027, \u0027Owner\u0027]"},{"line_number":294,"context_line":"    utils.print_list(tasks, columns)"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAWH%2F%2Fkmw%3D","line":291,"in_reply_to":"AAAAVn%2F%2Fm%2FA%3D","updated":"2014-03-16 15:22:28.000000000","message":"Done","commit_id":"268302886e31dd7634cf1b93a2d8f6ed4421a089"},{"author":{"_account_id":177,"name":"Alex Meade","email":"mr.alex.meade@gmail.com","username":"alex-meade"},"change_message_id":"3af8a8968ae1f012de86f25a4f19ebcff628f9b9","unresolved":false,"context_lines":[{"line_number":275,"context_line":"@utils.arg(\u0027--page-size\u0027, metavar\u003d\u0027\u003cSIZE\u003e\u0027, default\u003dNone, type\u003dint,"},{"line_number":276,"context_line":"           help\u003d\u0027Number of tasks to request in each paginated request.\u0027)"},{"line_number":277,"context_line":"@utils.arg(\u0027--type\u0027, metavar\u003d\u0027\u003cTYPE\u003e\u0027,"},{"line_number":278,"context_line":"           help\u003d\u0027Filter tasks to those that have this status.\u0027)"},{"line_number":279,"context_line":"@utils.arg(\u0027--status\u0027, metavar\u003d\u0027\u003cSTATUS\u003e\u0027,"},{"line_number":280,"context_line":"           help\u003d\u0027Filter tasks to those that have this status.\u0027)"},{"line_number":281,"context_line":"def do_task_list(gc, args):"}],"source_content_type":"text/x-python","patch_set":7,"id":"AAAAWH%2F%2Bn6g%3D","line":278,"updated":"2014-03-25 14:05:40.000000000","message":"This should say type I think :)","commit_id":"d92e59650f3acf437671b3734f40e28a2690dc2c"},{"author":{"_account_id":6484,"name":"Feilong Wang","email":"hustemb@gmail.com","username":"flwang"},"change_message_id":"5539785f4b14a8a493baacb809f1ab1161ed95cb","unresolved":false,"context_lines":[{"line_number":275,"context_line":"@utils.arg(\u0027--page-size\u0027, metavar\u003d\u0027\u003cSIZE\u003e\u0027, default\u003dNone, type\u003dint,"},{"line_number":276,"context_line":"           help\u003d\u0027Number of tasks to request in each paginated request.\u0027)"},{"line_number":277,"context_line":"@utils.arg(\u0027--type\u0027, metavar\u003d\u0027\u003cTYPE\u003e\u0027,"},{"line_number":278,"context_line":"           help\u003d\u0027Filter tasks to those that have this status.\u0027)"},{"line_number":279,"context_line":"@utils.arg(\u0027--status\u0027, metavar\u003d\u0027\u003cSTATUS\u003e\u0027,"},{"line_number":280,"context_line":"           help\u003d\u0027Filter tasks to those that have this status.\u0027)"},{"line_number":281,"context_line":"def do_task_list(gc, args):"}],"source_content_type":"text/x-python","patch_set":7,"id":"AAAAWH%2F%2BmiQ%3D","line":278,"in_reply_to":"AAAAWH%2F%2Bn6g%3D","updated":"2014-03-25 16:21:26.000000000","message":"Oops, good catch.","commit_id":"d92e59650f3acf437671b3734f40e28a2690dc2c"},{"author":{"_account_id":2537,"name":"Nikhil Komawar","email":"nik.komawar@gmail.com","username":"nikhil-komawar"},"change_message_id":"c2422b9f6de5c547c6bfb45a5405944147218645","unresolved":false,"context_lines":[{"line_number":307,"context_line":""},{"line_number":308,"context_line":""},{"line_number":309,"context_line":"@utils.arg(\u0027--type\u0027, metavar\u003d\u0027\u003cTYPE\u003e\u0027,"},{"line_number":310,"context_line":"           help\u003d\u0027Type of Task\u0027)"},{"line_number":311,"context_line":"@utils.arg(\u0027--input\u0027, metavar\u003d\u0027\u003cParameter\u003dValue\u003e\u0027, action\u003d\u0027append\u0027,"},{"line_number":312,"context_line":"           help\u003d\u0027Parameters of the task to be launched\u0027)"},{"line_number":313,"context_line":"def do_task_create(gc, args):"}],"source_content_type":"text/x-python","patch_set":13,"id":"1ae5cdf2_58ad6083","line":310,"updated":"2014-06-12 02:08:31.000000000","message":"Oh, I see. Think that this should be okay. Let me think about it a bit more.","commit_id":"5954277f21feff0f463f9aad4e094552972b5f51"},{"author":{"_account_id":2537,"name":"Nikhil Komawar","email":"nik.komawar@gmail.com","username":"nikhil-komawar"},"change_message_id":"3d8ba0fc0c8a777898cfaa911a758f8e23ebdb1f","unresolved":false,"context_lines":[{"line_number":307,"context_line":""},{"line_number":308,"context_line":""},{"line_number":309,"context_line":"@utils.arg(\u0027--type\u0027, metavar\u003d\u0027\u003cTYPE\u003e\u0027,"},{"line_number":310,"context_line":"           help\u003d\u0027Type of Task\u0027)"},{"line_number":311,"context_line":"@utils.arg(\u0027--input\u0027, metavar\u003d\u0027\u003cParameter\u003dValue\u003e\u0027, action\u003d\u0027append\u0027,"},{"line_number":312,"context_line":"           help\u003d\u0027Parameters of the task to be launched\u0027)"},{"line_number":313,"context_line":"def do_task_create(gc, args):"}],"source_content_type":"text/x-python","patch_set":15,"id":"1ae5cdf2_408ab964","line":310,"updated":"2014-06-12 13:59:05.000000000","message":"This makes sense. Can you please add a few more words along the lines of \n\n\"Please refer to Glance schema or documentation to see which tasks are supported.\" ?","commit_id":"ac2c999186a16f86a3088da88f37dc2434610755"},{"author":{"_account_id":6484,"name":"Feilong Wang","email":"hustemb@gmail.com","username":"flwang"},"change_message_id":"d1682b27130b75f5e41448046ed07e1b8c5a9e0a","unresolved":false,"context_lines":[{"line_number":307,"context_line":""},{"line_number":308,"context_line":""},{"line_number":309,"context_line":"@utils.arg(\u0027--type\u0027, metavar\u003d\u0027\u003cTYPE\u003e\u0027,"},{"line_number":310,"context_line":"           help\u003d\u0027Type of Task\u0027)"},{"line_number":311,"context_line":"@utils.arg(\u0027--input\u0027, metavar\u003d\u0027\u003cParameter\u003dValue\u003e\u0027, action\u003d\u0027append\u0027,"},{"line_number":312,"context_line":"           help\u003d\u0027Parameters of the task to be launched\u0027)"},{"line_number":313,"context_line":"def do_task_create(gc, args):"}],"source_content_type":"text/x-python","patch_set":15,"id":"1ae5cdf2_22e763ad","line":310,"in_reply_to":"1ae5cdf2_408ab964","updated":"2014-06-12 22:28:05.000000000","message":"Good suggestion.","commit_id":"ac2c999186a16f86a3088da88f37dc2434610755"}],"glanceclient/v2/tasks.py":[{"author":{"_account_id":177,"name":"Alex Meade","email":"mr.alex.meade@gmail.com","username":"alex-meade"},"change_message_id":"3af8a8968ae1f012de86f25a4f19ebcff628f9b9","unresolved":false,"context_lines":[{"line_number":24,"context_line":""},{"line_number":25,"context_line":"SORT_DIR_VALUES \u003d (\u0027asc\u0027, \u0027desc\u0027)"},{"line_number":26,"context_line":"SORT_KEY_VALUES \u003d (\u0027id\u0027, \u0027type\u0027, \u0027status\u0027)"},{"line_number":27,"context_line":"TASK_TYPES \u003d (\u0027import\u0027)"},{"line_number":28,"context_line":""},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"class Controller(object):"}],"source_content_type":"text/x-python","patch_set":7,"id":"AAAAWH%2F%2Bn60%3D","line":27,"updated":"2014-03-25 14:05:40.000000000","message":"Ran into this small error below:\n\nglance --os-image-api-version 2 task-create --type test --input blah\u003dfoo\nusage: glance task-create [--type \u003cTYPE\u003e] [--input \u003cParameter\u003dValue\u003e]\nglance task-create: error: argument --type: invalid choice: u\u0027test\u0027 (choose from \u0027i\u0027, \u0027m\u0027, \u0027p\u0027, \u0027o\u0027, \u0027r\u0027, \u0027t\u0027)\n\nThis line is not actually creating a tuple, you need to do:\nTASK_TYPES \u003d (\u0027import\u0027,)","commit_id":"d92e59650f3acf437671b3734f40e28a2690dc2c"},{"author":{"_account_id":6484,"name":"Feilong Wang","email":"hustemb@gmail.com","username":"flwang"},"change_message_id":"5539785f4b14a8a493baacb809f1ab1161ed95cb","unresolved":false,"context_lines":[{"line_number":24,"context_line":""},{"line_number":25,"context_line":"SORT_DIR_VALUES \u003d (\u0027asc\u0027, \u0027desc\u0027)"},{"line_number":26,"context_line":"SORT_KEY_VALUES \u003d (\u0027id\u0027, \u0027type\u0027, \u0027status\u0027)"},{"line_number":27,"context_line":"TASK_TYPES \u003d (\u0027import\u0027)"},{"line_number":28,"context_line":""},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"class Controller(object):"}],"source_content_type":"text/x-python","patch_set":7,"id":"AAAAWH%2F%2Bmhk%3D","line":27,"in_reply_to":"AAAAWH%2F%2Bn60%3D","updated":"2014-03-25 16:21:26.000000000","message":"Good catch.","commit_id":"d92e59650f3acf437671b3734f40e28a2690dc2c"},{"author":{"_account_id":4463,"name":"iccha-sethi","email":"iccha.sethi@rackspace.com","username":"iccha-sethi"},"change_message_id":"6638c01162de92b604c48a00e27147a6bc9d2476","unresolved":false,"context_lines":[{"line_number":24,"context_line":""},{"line_number":25,"context_line":"SORT_DIR_VALUES \u003d (\u0027asc\u0027, \u0027desc\u0027)"},{"line_number":26,"context_line":"SORT_KEY_VALUES \u003d (\u0027id\u0027, \u0027type\u0027, \u0027status\u0027)"},{"line_number":27,"context_line":"TASK_TYPES \u003d (\u0027import\u0027,)"},{"line_number":28,"context_line":""},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"class Controller(object):"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAWn%2F%2F5is%3D","line":27,"updated":"2014-04-08 16:30:25.000000000","message":"I dont think the client should be aware of the type of tasks supported , that information should come from the api","commit_id":"a616e5d1075c8ec9e213905bb3134f8409e000cf"},{"author":{"_account_id":2537,"name":"Nikhil Komawar","email":"nik.komawar@gmail.com","username":"nikhil-komawar"},"change_message_id":"5d9b455c8645661fdd94ba382ff0682bb9a5b993","unresolved":false,"context_lines":[{"line_number":24,"context_line":""},{"line_number":25,"context_line":"SORT_DIR_VALUES \u003d (\u0027asc\u0027, \u0027desc\u0027)"},{"line_number":26,"context_line":"SORT_KEY_VALUES \u003d (\u0027id\u0027, \u0027type\u0027, \u0027status\u0027)"},{"line_number":27,"context_line":"TASK_TYPES \u003d (\u0027import\u0027,)"},{"line_number":28,"context_line":""},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"class Controller(object):"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAWn%2F%2F5EU%3D","line":27,"updated":"2014-04-08 17:26:21.000000000","message":"Is this even used?","commit_id":"a616e5d1075c8ec9e213905bb3134f8409e000cf"},{"author":{"_account_id":6484,"name":"Feilong Wang","email":"hustemb@gmail.com","username":"flwang"},"change_message_id":"f98e08465780bcef5613a99ecbdb9105726557b1","unresolved":false,"context_lines":[{"line_number":24,"context_line":""},{"line_number":25,"context_line":"SORT_DIR_VALUES \u003d (\u0027asc\u0027, \u0027desc\u0027)"},{"line_number":26,"context_line":"SORT_KEY_VALUES \u003d (\u0027id\u0027, \u0027type\u0027, \u0027status\u0027)"},{"line_number":27,"context_line":"TASK_TYPES \u003d (\u0027import\u0027,)"},{"line_number":28,"context_line":""},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"class Controller(object):"}],"source_content_type":"text/x-python","patch_set":8,"id":"7adec928_17887970","line":27,"in_reply_to":"AAAAWn%2F%2F5EU%3D","updated":"2014-05-09 09:03:59.000000000","message":"It\u0027s used by glanceclient/v2/shell.py line 310.","commit_id":"a616e5d1075c8ec9e213905bb3134f8409e000cf"},{"author":{"_account_id":2537,"name":"Nikhil Komawar","email":"nik.komawar@gmail.com","username":"nikhil-komawar"},"change_message_id":"34203666b36e384ba84357dc5fe779fcb3e9696d","unresolved":false,"context_lines":[{"line_number":76,"context_line":"                raise ValueError(\u0027sort_dir must be one of the following: %s.\u0027"},{"line_number":77,"context_line":"                                 % \u0027, \u0027.join(SORT_DIR_VALUES))"},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"        for param, value in filters.iteritems():"},{"line_number":80,"context_line":"            if isinstance(value, basestring):"},{"line_number":81,"context_line":"                filters[param] \u003d strutils.safe_encode(value)"},{"line_number":82,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAWn%2F%2F4jk%3D","line":79,"updated":"2014-04-08 18:43:11.000000000","message":"We prolly should use filters.items() here and avoid those py3 failing tests, what do you think?\n\nThis article suggests that we may get some performance hit however, it should not be very bad as we paginate. \n\nhttp://stackoverflow.com/questions/10458437/python-what-is-the-difference-between-dict-items-and-dict-iteritems","commit_id":"a616e5d1075c8ec9e213905bb3134f8409e000cf"},{"author":{"_account_id":2537,"name":"Nikhil Komawar","email":"nik.komawar@gmail.com","username":"nikhil-komawar"},"change_message_id":"66e3f349d0b12ad5573dfce0fd710e267b84cb68","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright 2013 OpenStack LLC."},{"line_number":2,"context_line":"# All Rights Reserved."},{"line_number":3,"context_line":"# Copyright 2013 IBM Corp."},{"line_number":4,"context_line":"#"},{"line_number":5,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"},{"line_number":6,"context_line":"#    not use this file except in compliance with the License. You may obtain"}],"source_content_type":"text/x-python","patch_set":10,"id":"1ae5cdf2_9cdd4617","line":3,"updated":"2014-06-11 02:16:56.000000000","message":"Copyright out of order.","commit_id":"526411711043550980d752446ff31d31ec969132"},{"author":{"_account_id":6484,"name":"Feilong Wang","email":"hustemb@gmail.com","username":"flwang"},"change_message_id":"d783b58e89ee957a1f743d80dd109a991bcd6622","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright 2013 OpenStack LLC."},{"line_number":2,"context_line":"# All Rights Reserved."},{"line_number":3,"context_line":"# Copyright 2013 IBM Corp."},{"line_number":4,"context_line":"#"},{"line_number":5,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"},{"line_number":6,"context_line":"#    not use this file except in compliance with the License. You may obtain"}],"source_content_type":"text/x-python","patch_set":10,"id":"1ae5cdf2_1f0da33e","line":3,"in_reply_to":"1ae5cdf2_9cdd4617","updated":"2014-06-11 07:31:49.000000000","message":"Done","commit_id":"526411711043550980d752446ff31d31ec969132"},{"author":{"_account_id":2537,"name":"Nikhil Komawar","email":"nik.komawar@gmail.com","username":"nikhil-komawar"},"change_message_id":"66e3f349d0b12ad5573dfce0fd710e267b84cb68","unresolved":false,"context_lines":[{"line_number":24,"context_line":""},{"line_number":25,"context_line":"SORT_DIR_VALUES \u003d (\u0027asc\u0027, \u0027desc\u0027)"},{"line_number":26,"context_line":"SORT_KEY_VALUES \u003d (\u0027id\u0027, \u0027type\u0027, \u0027status\u0027)"},{"line_number":27,"context_line":"TASK_TYPES \u003d (\u0027import\u0027,)"},{"line_number":28,"context_line":""},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"class Controller(object):"}],"source_content_type":"text/x-python","patch_set":10,"id":"1ae5cdf2_dcb0aedf","line":27,"updated":"2014-06-11 02:16:56.000000000","message":"This should come from schema as pointed out earlier by Iccha in PS8.","commit_id":"526411711043550980d752446ff31d31ec969132"},{"author":{"_account_id":6484,"name":"Feilong Wang","email":"hustemb@gmail.com","username":"flwang"},"change_message_id":"d783b58e89ee957a1f743d80dd109a991bcd6622","unresolved":false,"context_lines":[{"line_number":24,"context_line":""},{"line_number":25,"context_line":"SORT_DIR_VALUES \u003d (\u0027asc\u0027, \u0027desc\u0027)"},{"line_number":26,"context_line":"SORT_KEY_VALUES \u003d (\u0027id\u0027, \u0027type\u0027, \u0027status\u0027)"},{"line_number":27,"context_line":"TASK_TYPES \u003d (\u0027import\u0027,)"},{"line_number":28,"context_line":""},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"class Controller(object):"}],"source_content_type":"text/x-python","patch_set":10,"id":"1ae5cdf2_9a2701b6","line":27,"in_reply_to":"1ae5cdf2_dcb0aedf","updated":"2014-06-11 07:31:49.000000000","message":"Ah, I can see your point now. I found it\u0027s hard to get the type value by API, so I\u0027m remove this and leaving the decision made by Glance service side just like there other arguments did. Please let me know if there is any better way to get the \u0027type\u0027 enum value from API. Thanks.","commit_id":"526411711043550980d752446ff31d31ec969132"},{"author":{"_account_id":5202,"name":"Erno Kuvaja","email":"jokke@usr.fi","username":"jokke"},"change_message_id":"eaa477e122a22fcdc9f9081923a7af7d790f9c23","unresolved":false,"context_lines":[{"line_number":18,"context_line":""},{"line_number":19,"context_line":"import warlock"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"from glanceclient.openstack.common.py3kcompat import urlutils"},{"line_number":22,"context_line":"from glanceclient.openstack.common import strutils"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"DEFAULT_PAGE_SIZE \u003d 20"}],"source_content_type":"text/x-python","patch_set":15,"id":"1ae5cdf2_e47042a6","line":21,"updated":"2014-06-12 08:17:43.000000000","message":"py3kcompat got removed from oslo.incubator in favor of six in Feb: https://bugs.launchpad.net/oslo.messaging/+bug/1280033\n(This is also why the tests fails currently)","commit_id":"ac2c999186a16f86a3088da88f37dc2434610755"},{"author":{"_account_id":6484,"name":"Feilong Wang","email":"hustemb@gmail.com","username":"flwang"},"change_message_id":"d1682b27130b75f5e41448046ed07e1b8c5a9e0a","unresolved":false,"context_lines":[{"line_number":18,"context_line":""},{"line_number":19,"context_line":"import warlock"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"from glanceclient.openstack.common.py3kcompat import urlutils"},{"line_number":22,"context_line":"from glanceclient.openstack.common import strutils"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"DEFAULT_PAGE_SIZE \u003d 20"}],"source_content_type":"text/x-python","patch_set":15,"id":"1ae5cdf2_62040b4a","line":21,"in_reply_to":"1ae5cdf2_e47042a6","updated":"2014-06-12 22:28:05.000000000","message":"Cool, thanks for figuring it out.","commit_id":"ac2c999186a16f86a3088da88f37dc2434610755"}],"tests/v2/test_tasks.py":[{"author":{"_account_id":2537,"name":"Nikhil Komawar","email":"nik.komawar@gmail.com","username":"nikhil-komawar"},"change_message_id":"34203666b36e384ba84357dc5fe779fcb3e9696d","unresolved":false,"context_lines":[{"line_number":39,"context_line":"                },"},{"line_number":40,"context_line":"                {"},{"line_number":41,"context_line":"                    \u0027id\u0027: \u00276f99bf80-2ee6-47cf-acfe-1f1fabb7e810\u0027,"},{"line_number":42,"context_line":"                    \u0027type\u0027: \u0027export\u0027,"},{"line_number":43,"context_line":"                    \u0027status\u0027: \u0027processing\u0027,"},{"line_number":44,"context_line":"                },"},{"line_number":45,"context_line":"            ]},"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAWn%2F%2F4kY%3D","line":42,"updated":"2014-04-08 18:43:11.000000000","message":"If we are restricting users to use specific tasks then may be export should not be used in the tests yet?","commit_id":"a616e5d1075c8ec9e213905bb3134f8409e000cf"},{"author":{"_account_id":2537,"name":"Nikhil Komawar","email":"nik.komawar@gmail.com","username":"nikhil-komawar"},"change_message_id":"66e3f349d0b12ad5573dfce0fd710e267b84cb68","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright 2013 OpenStack Foundation."},{"line_number":2,"context_line":"# All Rights Reserved."},{"line_number":3,"context_line":"# Copyright 2013 IBM Corp."},{"line_number":4,"context_line":"#"},{"line_number":5,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"},{"line_number":6,"context_line":"#    not use this file except in compliance with the License. You may obtain"}],"source_content_type":"text/x-python","patch_set":10,"id":"1ae5cdf2_bce042cd","line":3,"updated":"2014-06-11 02:16:56.000000000","message":"ditto","commit_id":"526411711043550980d752446ff31d31ec969132"},{"author":{"_account_id":6484,"name":"Feilong Wang","email":"hustemb@gmail.com","username":"flwang"},"change_message_id":"d783b58e89ee957a1f743d80dd109a991bcd6622","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright 2013 OpenStack Foundation."},{"line_number":2,"context_line":"# All Rights Reserved."},{"line_number":3,"context_line":"# Copyright 2013 IBM Corp."},{"line_number":4,"context_line":"#"},{"line_number":5,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"},{"line_number":6,"context_line":"#    not use this file except in compliance with the License. You may obtain"}],"source_content_type":"text/x-python","patch_set":10,"id":"1ae5cdf2_da1d0964","line":3,"in_reply_to":"1ae5cdf2_bce042cd","updated":"2014-06-11 07:31:49.000000000","message":"Done","commit_id":"526411711043550980d752446ff31d31ec969132"}]}
