)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"166af3b2f9764bc0ac842610a98dedf474108c7a","unresolved":false,"context_lines":[{"line_number":10,"context_line":"- Share instances table"},{"line_number":11,"context_line":"- Share instance detailed page"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Implement bp share-instances-support"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Change-Id: I3fe07313ca58c62293109845c6834d900487984c"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":14,"id":"dab17558_4ec0427d","line":13,"updated":"2016-05-12 12:00:27.000000000","message":"Probably need to get this bp targeted to newton?  Dead link.","commit_id":"c579b513b6260e716cf2228f2c4e48cc533e9f26"},{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"3e7001021e08b8ff3aa8225c79fe57e397f03754","unresolved":false,"context_lines":[{"line_number":10,"context_line":"- Share instances table"},{"line_number":11,"context_line":"- Share instance detailed page"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Implement bp share-instances-support"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Change-Id: I3fe07313ca58c62293109845c6834d900487984c"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":14,"id":"dab17558_cbeed6b3","line":13,"in_reply_to":"dab17558_4ec0427d","updated":"2016-05-12 14:31:34.000000000","message":"https://blueprints.launchpad.net/manila-ui/+spec/share-instances-support","commit_id":"c579b513b6260e716cf2228f2c4e48cc533e9f26"},{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"06c4d1fbebd1380a2cdb682034d5d8089aa8dbc8","unresolved":false,"context_lines":[{"line_number":10,"context_line":"- Share instances table"},{"line_number":11,"context_line":"- Share instance detailed page"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Implement bp share-instances-support"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Change-Id: I3fe07313ca58c62293109845c6834d900487984c"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":14,"id":"dab17558_70ecf28f","line":13,"in_reply_to":"dab17558_cbeed6b3","updated":"2016-05-12 16:57:45.000000000","message":"ok but when I click on the link in the commit message I get \"No feature specifications match your criteria.\"","commit_id":"c579b513b6260e716cf2228f2c4e48cc533e9f26"}],"manila_ui/api/manila.py":[{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"166af3b2f9764bc0ac842610a98dedf474108c7a","unresolved":false,"context_lines":[{"line_number":347,"context_line":"    return limits_dict"},{"line_number":348,"context_line":""},{"line_number":349,"context_line":""},{"line_number":350,"context_line":"def share_instance_list(request):"},{"line_number":351,"context_line":"    return manilaclient(request).share_instances.list()"},{"line_number":352,"context_line":""},{"line_number":353,"context_line":""}],"source_content_type":"text/x-python","patch_set":14,"id":"dab17558_49cddc5c","line":350,"updated":"2016-05-12 12:00:27.000000000","message":"Do you want search_opts argument?","commit_id":"c579b513b6260e716cf2228f2c4e48cc533e9f26"},{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"06c4d1fbebd1380a2cdb682034d5d8089aa8dbc8","unresolved":false,"context_lines":[{"line_number":347,"context_line":"    return limits_dict"},{"line_number":348,"context_line":""},{"line_number":349,"context_line":""},{"line_number":350,"context_line":"def share_instance_list(request):"},{"line_number":351,"context_line":"    return manilaclient(request).share_instances.list()"},{"line_number":352,"context_line":""},{"line_number":353,"context_line":""}],"source_content_type":"text/x-python","patch_set":14,"id":"dab17558_90119660","line":350,"in_reply_to":"dab17558_1e2adee7","updated":"2016-05-12 16:57:45.000000000","message":"True story, I should have looked.","commit_id":"c579b513b6260e716cf2228f2c4e48cc533e9f26"},{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"3e7001021e08b8ff3aa8225c79fe57e397f03754","unresolved":false,"context_lines":[{"line_number":347,"context_line":"    return limits_dict"},{"line_number":348,"context_line":""},{"line_number":349,"context_line":""},{"line_number":350,"context_line":"def share_instance_list(request):"},{"line_number":351,"context_line":"    return manilaclient(request).share_instances.list()"},{"line_number":352,"context_line":""},{"line_number":353,"context_line":""}],"source_content_type":"text/x-python","patch_set":14,"id":"dab17558_1e2adee7","line":350,"in_reply_to":"dab17558_49cddc5c","updated":"2016-05-12 14:31:34.000000000","message":"If you find it in manilaclient [1], just let me know, ok? ))\n\n[1] https://github.com/openstack/python-manilaclient/blob/a0d61899/manilaclient/v2/share_instances.py#L50","commit_id":"c579b513b6260e716cf2228f2c4e48cc533e9f26"}],"manila_ui/dashboards/admin/shares/tables.py":[{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"3715e6eb1b4689864b407516f36a7dfc2701a871","unresolved":false,"context_lines":[{"line_number":486,"context_line":""},{"line_number":487,"context_line":"    class Meta(object):"},{"line_number":488,"context_line":"        name \u003d \"share_instances\""},{"line_number":489,"context_line":"        verbose_name \u003d _(\"Share Instances\")"},{"line_number":490,"context_line":"        status_columns \u003d [\"status\"]"}],"source_content_type":"text/x-python","patch_set":3,"id":"1a7b0d38_01006700","line":489,"range":{"start_line":489,"start_character":22,"end_line":489,"end_character":23},"updated":"2015-12-24 15:15:07.000000000","message":"Why share instance has no possibility to be deleted?","commit_id":"2deafb57415de5ecf6749990d3510682e2c6a6bc"},{"author":{"_account_id":7331,"name":"Julia Varlamova","email":"jvarlamova@mirantis.com","username":"jvarlamova"},"change_message_id":"b202ebfec1f5eb6ed641c5413fbbd3cff4dc61b8","unresolved":false,"context_lines":[{"line_number":486,"context_line":""},{"line_number":487,"context_line":"    class Meta(object):"},{"line_number":488,"context_line":"        name \u003d \"share_instances\""},{"line_number":489,"context_line":"        verbose_name \u003d _(\"Share Instances\")"},{"line_number":490,"context_line":"        status_columns \u003d [\"status\"]"}],"source_content_type":"text/x-python","patch_set":3,"id":"1a7b0d38_e6e3df31","line":489,"range":{"start_line":489,"start_character":22,"end_line":489,"end_character":23},"in_reply_to":"1a7b0d38_01006700","updated":"2015-12-25 11:25:05.000000000","message":"But we cannot delete share instance via CLI.","commit_id":"2deafb57415de5ecf6749990d3510682e2c6a6bc"},{"author":{"_account_id":15100,"name":"zhongjun","email":"jun.zhongjun2@gmail.com","username":"zhongjun2"},"change_message_id":"c7480ec42b025ae9dafa7310c2ad92446ebc13a2","unresolved":false,"context_lines":[{"line_number":486,"context_line":""},{"line_number":487,"context_line":"    class Meta(object):"},{"line_number":488,"context_line":"        name \u003d \"share_instances\""},{"line_number":489,"context_line":"        verbose_name \u003d _(\"Share Instances\")"},{"line_number":490,"context_line":"        status_columns \u003d [\"status\"]"}],"source_content_type":"text/x-python","patch_set":3,"id":"fa69d971_c519bb89","line":489,"range":{"start_line":489,"start_character":22,"end_line":489,"end_character":23},"in_reply_to":"1a7b0d38_e6e3df31","updated":"2016-01-11 08:54:18.000000000","message":"We could use the \"share-instance-force-delete\" CLI command to delete share instance.","commit_id":"2deafb57415de5ecf6749990d3510682e2c6a6bc"},{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"8c04f50f5a74b7456bc0705b8e2175d9f646d926","unresolved":false,"context_lines":[{"line_number":467,"context_line":"        else:"},{"line_number":468,"context_line":"            return None"},{"line_number":469,"context_line":""},{"line_number":470,"context_line":"    share_net_id \u003d tables.Column("},{"line_number":471,"context_line":"        \"share_network_id\","},{"line_number":472,"context_line":"        verbose_name\u003d_(\"Share Network\"),"},{"line_number":473,"context_line":"        link\u003dget_share_network_link)"},{"line_number":474,"context_line":"    share_server_id \u003d tables.Column("},{"line_number":475,"context_line":"        \"share_server_id\","},{"line_number":476,"context_line":"        verbose_name\u003d_(\"Share Server Id\"),"},{"line_number":477,"context_line":"        link\u003dget_share_server_link)"},{"line_number":478,"context_line":"    share_id \u003d tables.Column(\"share_id\", verbose_name\u003d_(\"Share ID\"),"},{"line_number":479,"context_line":"                             link\u003dget_share_link)"},{"line_number":480,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"fa0719c6_24de946d","line":477,"range":{"start_line":470,"start_character":4,"end_line":477,"end_character":35},"updated":"2016-03-21 17:49:14.000000000","message":"These become empty links if share-network and share-servers are not used.","commit_id":"167bc8b675555faf868b711d421dd258272fba28"},{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"166af3b2f9764bc0ac842610a98dedf474108c7a","unresolved":false,"context_lines":[{"line_number":157,"context_line":"    tenant \u003d tables.Column(\"tenant_name\", verbose_name\u003d_(\"Project\"))"},{"line_number":158,"context_line":""},{"line_number":159,"context_line":"    def get_share_server_link(share):"},{"line_number":160,"context_line":"        if getattr(share, \u0027share_server_id\u0027, None):"},{"line_number":161,"context_line":"            return reverse(\"horizon:admin:shares:share_server_detail\","},{"line_number":162,"context_line":"                           args\u003d(share.share_server_id,))"},{"line_number":163,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":14,"id":"dab17558_09ec748e","line":160,"updated":"2016-05-12 12:00:27.000000000","message":"Thank you.","commit_id":"c579b513b6260e716cf2228f2c4e48cc533e9f26"},{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"3e7001021e08b8ff3aa8225c79fe57e397f03754","unresolved":false,"context_lines":[{"line_number":157,"context_line":"    tenant \u003d tables.Column(\"tenant_name\", verbose_name\u003d_(\"Project\"))"},{"line_number":158,"context_line":""},{"line_number":159,"context_line":"    def get_share_server_link(share):"},{"line_number":160,"context_line":"        if getattr(share, \u0027share_server_id\u0027, None):"},{"line_number":161,"context_line":"            return reverse(\"horizon:admin:shares:share_server_detail\","},{"line_number":162,"context_line":"                           args\u003d(share.share_server_id,))"},{"line_number":163,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":14,"id":"dab17558_5ed0e6c9","line":160,"in_reply_to":"dab17558_09ec748e","updated":"2016-05-12 14:31:34.000000000","message":"You are welcome ))","commit_id":"c579b513b6260e716cf2228f2c4e48cc533e9f26"},{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"166af3b2f9764bc0ac842610a98dedf474108c7a","unresolved":false,"context_lines":[{"line_number":450,"context_line":"        (\"creating\", u\"Creating\"),"},{"line_number":451,"context_line":"        (\"deleting\", u\"Deleting\"),"},{"line_number":452,"context_line":"        (\"error\", u\"Error\"),"},{"line_number":453,"context_line":"        (\"error_deleting\", u\"Error deleting\"),"},{"line_number":454,"context_line":"    )"},{"line_number":455,"context_line":"    uuid \u003d tables.Column("},{"line_number":456,"context_line":"        \"id\", verbose_name\u003d_(\"ID\"),"}],"source_content_type":"text/x-python","patch_set":14,"id":"dab17558_8954e421","line":453,"updated":"2016-05-12 12:00:27.000000000","message":"maybe: \"Error Deleting\" ?","commit_id":"c579b513b6260e716cf2228f2c4e48cc533e9f26"},{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"3e7001021e08b8ff3aa8225c79fe57e397f03754","unresolved":false,"context_lines":[{"line_number":450,"context_line":"        (\"creating\", u\"Creating\"),"},{"line_number":451,"context_line":"        (\"deleting\", u\"Deleting\"),"},{"line_number":452,"context_line":"        (\"error\", u\"Error\"),"},{"line_number":453,"context_line":"        (\"error_deleting\", u\"Error deleting\"),"},{"line_number":454,"context_line":"    )"},{"line_number":455,"context_line":"    uuid \u003d tables.Column("},{"line_number":456,"context_line":"        \"id\", verbose_name\u003d_(\"ID\"),"}],"source_content_type":"text/x-python","patch_set":14,"id":"dab17558_febf1a5e","line":453,"in_reply_to":"dab17558_8954e421","updated":"2016-05-12 14:31:34.000000000","message":"Why? Copy-pasted, it is compatible with other similar things.","commit_id":"c579b513b6260e716cf2228f2c4e48cc533e9f26"},{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"06c4d1fbebd1380a2cdb682034d5d8089aa8dbc8","unresolved":false,"context_lines":[{"line_number":450,"context_line":"        (\"creating\", u\"Creating\"),"},{"line_number":451,"context_line":"        (\"deleting\", u\"Deleting\"),"},{"line_number":452,"context_line":"        (\"error\", u\"Error\"),"},{"line_number":453,"context_line":"        (\"error_deleting\", u\"Error deleting\"),"},{"line_number":454,"context_line":"    )"},{"line_number":455,"context_line":"    uuid \u003d tables.Column("},{"line_number":456,"context_line":"        \"id\", verbose_name\u003d_(\"ID\"),"}],"source_content_type":"text/x-python","patch_set":14,"id":"dab17558_b0fe5a36","line":453,"in_reply_to":"dab17558_febf1a5e","updated":"2016-05-12 16:57:45.000000000","message":"ok","commit_id":"c579b513b6260e716cf2228f2c4e48cc533e9f26"},{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"166af3b2f9764bc0ac842610a98dedf474108c7a","unresolved":false,"context_lines":[{"line_number":465,"context_line":"    class Meta(object):"},{"line_number":466,"context_line":"        name \u003d \"share_instances\""},{"line_number":467,"context_line":"        verbose_name \u003d _(\"Share Instances\")"},{"line_number":468,"context_line":"        status_columns \u003d (\"status\", )"},{"line_number":469,"context_line":"        table_actions \u003d (shares_tables.SharesFilterAction, )"},{"line_number":470,"context_line":""},{"line_number":471,"context_line":"    def get_share_network_link(share_instance):"}],"source_content_type":"text/x-python","patch_set":14,"id":"dab17558_c492534b","line":468,"updated":"2016-05-12 12:00:27.000000000","message":"Elsewhere in this file status_columns is a list rather than a tuple.","commit_id":"c579b513b6260e716cf2228f2c4e48cc533e9f26"},{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"06c4d1fbebd1380a2cdb682034d5d8089aa8dbc8","unresolved":false,"context_lines":[{"line_number":465,"context_line":"    class Meta(object):"},{"line_number":466,"context_line":"        name \u003d \"share_instances\""},{"line_number":467,"context_line":"        verbose_name \u003d _(\"Share Instances\")"},{"line_number":468,"context_line":"        status_columns \u003d (\"status\", )"},{"line_number":469,"context_line":"        table_actions \u003d (shares_tables.SharesFilterAction, )"},{"line_number":470,"context_line":""},{"line_number":471,"context_line":"    def get_share_network_link(share_instance):"}],"source_content_type":"text/x-python","patch_set":14,"id":"dab17558_f0546222","line":468,"in_reply_to":"dab17558_9e01ae3c","updated":"2016-05-12 16:57:45.000000000","message":"Consistency of style, especially within a file, makes code easier to read, doesn\u0027t raise distracting quesitons for the reader.  This kind of speedup in UI app is pretty irrelevant.\n\nAll that said, I did +1 on this changeset and consider this point a nit not worth arguing to the death about.  Maybe I\u0027ll do a followup patch to change them all to tuples :)","commit_id":"c579b513b6260e716cf2228f2c4e48cc533e9f26"},{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"3e7001021e08b8ff3aa8225c79fe57e397f03754","unresolved":false,"context_lines":[{"line_number":465,"context_line":"    class Meta(object):"},{"line_number":466,"context_line":"        name \u003d \"share_instances\""},{"line_number":467,"context_line":"        verbose_name \u003d _(\"Share Instances\")"},{"line_number":468,"context_line":"        status_columns \u003d (\"status\", )"},{"line_number":469,"context_line":"        table_actions \u003d (shares_tables.SharesFilterAction, )"},{"line_number":470,"context_line":""},{"line_number":471,"context_line":"    def get_share_network_link(share_instance):"}],"source_content_type":"text/x-python","patch_set":14,"id":"dab17558_9e01ae3c","line":468,"in_reply_to":"dab17558_c492534b","updated":"2016-05-12 14:31:34.000000000","message":"This one is better. Both work, this one just faster.","commit_id":"c579b513b6260e716cf2228f2c4e48cc533e9f26"},{"author":{"_account_id":11047,"name":"Mark Sturdevant","email":"mark.sturdevant@ibm.com","username":"markstur"},"change_message_id":"e41a643e10b4211b6433a6b584e42f63c2f9e3f5","unresolved":false,"context_lines":[{"line_number":456,"context_line":"        \"id\", verbose_name\u003d_(\"ID\"),"},{"line_number":457,"context_line":"        link\u003d\"horizon:admin:shares:share_instance_detail\")"},{"line_number":458,"context_line":"    host \u003d tables.Column(\"host\", verbose_name\u003d_(\"Host\"))"},{"line_number":459,"context_line":"    status \u003d tables.Column(\"status\", verbose_name\u003d_(\"Status\"), status\u003dTrue,"},{"line_number":460,"context_line":"                           status_choices\u003dSTATUS_CHOICES,"},{"line_number":461,"context_line":"                           display_choices\u003dSTATUS_DISPLAY_CHOICES)"},{"line_number":462,"context_line":"    availability_zone \u003d tables.Column("}],"source_content_type":"text/x-python","patch_set":15,"id":"dab17558_e3efac84","line":459,"range":{"start_line":459,"start_character":36,"end_line":459,"end_character":75},"updated":"2016-05-17 18:32:12.000000000","message":"nit -- this would be a good place to follow the openstack guideline and put a carriage return after the commas (one arg per line when they don\u0027t all fit in one).","commit_id":"f9662485b45bc8846dd8ddeff0681f157d7dd83e"},{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"51d1c713b927cac723c2effc1026f3fec0c72b23","unresolved":false,"context_lines":[{"line_number":456,"context_line":"        \"id\", verbose_name\u003d_(\"ID\"),"},{"line_number":457,"context_line":"        link\u003d\"horizon:admin:shares:share_instance_detail\")"},{"line_number":458,"context_line":"    host \u003d tables.Column(\"host\", verbose_name\u003d_(\"Host\"))"},{"line_number":459,"context_line":"    status \u003d tables.Column(\"status\", verbose_name\u003d_(\"Status\"), status\u003dTrue,"},{"line_number":460,"context_line":"                           status_choices\u003dSTATUS_CHOICES,"},{"line_number":461,"context_line":"                           display_choices\u003dSTATUS_DISPLAY_CHOICES)"},{"line_number":462,"context_line":"    availability_zone \u003d tables.Column("}],"source_content_type":"text/x-python","patch_set":15,"id":"dab17558_69dd5bdf","line":459,"range":{"start_line":459,"start_character":36,"end_line":459,"end_character":75},"in_reply_to":"dab17558_e3efac84","updated":"2016-05-17 19:08:31.000000000","message":"Done","commit_id":"f9662485b45bc8846dd8ddeff0681f157d7dd83e"}],"manila_ui/dashboards/admin/shares/templates/shares/_detail_share_instance.html":[{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"3715e6eb1b4689864b407516f36a7dfc2701a871","unresolved":false,"context_lines":[{"line_number":18,"context_line":"    \u003cdt\u003e{% trans \"Share Network\" %}\u003c/dt\u003e"},{"line_number":19,"context_line":"    \u003cdd\u003e{{ share_instance.share_network_id}}\u003c/dd\u003e"},{"line_number":20,"context_line":"    \u003cdt\u003e{% trans \"Share ID\" %}\u003c/dt\u003e"},{"line_number":21,"context_line":"    \u003cdd\u003e{{ share_instance.share_id}}\u003c/dd\u003e"},{"line_number":22,"context_line":"    \u003cdt\u003e{% trans \"Share Server\" %}\u003c/dt\u003e"},{"line_number":23,"context_line":"    \u003cdd\u003e{{ share_instance.share_server_id}}\u003c/dd\u003e"},{"line_number":24,"context_line":"  \u003c/dl\u003e"}],"source_content_type":"text/html","patch_set":3,"id":"1a7b0d38_3eab3e1f","line":21,"range":{"start_line":21,"start_character":11,"end_line":21,"end_character":34},"updated":"2015-12-24 15:15:07.000000000","message":"This","commit_id":"2deafb57415de5ecf6749990d3510682e2c6a6bc"},{"author":{"_account_id":7331,"name":"Julia Varlamova","email":"jvarlamova@mirantis.com","username":"jvarlamova"},"change_message_id":"b202ebfec1f5eb6ed641c5413fbbd3cff4dc61b8","unresolved":false,"context_lines":[{"line_number":18,"context_line":"    \u003cdt\u003e{% trans \"Share Network\" %}\u003c/dt\u003e"},{"line_number":19,"context_line":"    \u003cdd\u003e{{ share_instance.share_network_id}}\u003c/dd\u003e"},{"line_number":20,"context_line":"    \u003cdt\u003e{% trans \"Share ID\" %}\u003c/dt\u003e"},{"line_number":21,"context_line":"    \u003cdd\u003e{{ share_instance.share_id}}\u003c/dd\u003e"},{"line_number":22,"context_line":"    \u003cdt\u003e{% trans \"Share Server\" %}\u003c/dt\u003e"},{"line_number":23,"context_line":"    \u003cdd\u003e{{ share_instance.share_server_id}}\u003c/dd\u003e"},{"line_number":24,"context_line":"  \u003c/dl\u003e"}],"source_content_type":"text/html","patch_set":3,"id":"1a7b0d38_a60957df","line":21,"range":{"start_line":21,"start_character":11,"end_line":21,"end_character":34},"in_reply_to":"1a7b0d38_3eab3e1f","updated":"2015-12-25 11:25:05.000000000","message":"Done","commit_id":"2deafb57415de5ecf6749990d3510682e2c6a6bc"},{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"3715e6eb1b4689864b407516f36a7dfc2701a871","unresolved":false,"context_lines":[{"line_number":20,"context_line":"    \u003cdt\u003e{% trans \"Share ID\" %}\u003c/dt\u003e"},{"line_number":21,"context_line":"    \u003cdd\u003e{{ share_instance.share_id}}\u003c/dd\u003e"},{"line_number":22,"context_line":"    \u003cdt\u003e{% trans \"Share Server\" %}\u003c/dt\u003e"},{"line_number":23,"context_line":"    \u003cdd\u003e{{ share_instance.share_server_id}}\u003c/dd\u003e"},{"line_number":24,"context_line":"  \u003c/dl\u003e"},{"line_number":25,"context_line":"\u003c/div\u003e"},{"line_number":26,"context_line":""}],"source_content_type":"text/html","patch_set":3,"id":"1a7b0d38_be6dee05","line":23,"range":{"start_line":23,"start_character":11,"end_line":23,"end_character":41},"updated":"2015-12-24 15:15:07.000000000","message":"and this should be link to appropriate detail pages.","commit_id":"2deafb57415de5ecf6749990d3510682e2c6a6bc"},{"author":{"_account_id":7331,"name":"Julia Varlamova","email":"jvarlamova@mirantis.com","username":"jvarlamova"},"change_message_id":"b202ebfec1f5eb6ed641c5413fbbd3cff4dc61b8","unresolved":false,"context_lines":[{"line_number":20,"context_line":"    \u003cdt\u003e{% trans \"Share ID\" %}\u003c/dt\u003e"},{"line_number":21,"context_line":"    \u003cdd\u003e{{ share_instance.share_id}}\u003c/dd\u003e"},{"line_number":22,"context_line":"    \u003cdt\u003e{% trans \"Share Server\" %}\u003c/dt\u003e"},{"line_number":23,"context_line":"    \u003cdd\u003e{{ share_instance.share_server_id}}\u003c/dd\u003e"},{"line_number":24,"context_line":"  \u003c/dl\u003e"},{"line_number":25,"context_line":"\u003c/div\u003e"},{"line_number":26,"context_line":""}],"source_content_type":"text/html","patch_set":3,"id":"1a7b0d38_4610b301","line":23,"range":{"start_line":23,"start_character":11,"end_line":23,"end_character":41},"in_reply_to":"1a7b0d38_be6dee05","updated":"2015-12-25 11:25:05.000000000","message":"Done","commit_id":"2deafb57415de5ecf6749990d3510682e2c6a6bc"},{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"8c04f50f5a74b7456bc0705b8e2175d9f646d926","unresolved":false,"context_lines":[{"line_number":20,"context_line":"    \u003cdt\u003e{% trans \"Share ID\" %}\u003c/dt\u003e"},{"line_number":21,"context_line":"    {% url \u0027horizon:project:shares:detail\u0027 share_instance.share_id as share_url %}"},{"line_number":22,"context_line":"    \u003cdd\u003e\u003ca href\u003d\"{{ share_url }}\"\u003e{{ share_instance.share_id }}\u003c/a\u003e\u003c/dd\u003e"},{"line_number":23,"context_line":"    \u003cdt\u003e{% trans \"Share Server\" %}\u003c/dt\u003e"},{"line_number":24,"context_line":"    {% url \u0027horizon:admin:shares:share_server_detail\u0027 share_instance.share_server_id as share_server_url %}"},{"line_number":25,"context_line":"    \u003cdd\u003e\u003ca href\u003d\"{{ share_server_url }}\"\u003e{{ share_instance.share_server_id }}\u003c/a\u003e\u003c/dd\u003e"},{"line_number":26,"context_line":"  \u003c/dl\u003e"},{"line_number":27,"context_line":"\u003c/div\u003e"},{"line_number":28,"context_line":""}],"source_content_type":"text/html","patch_set":6,"id":"fa0719c6_a209f733","line":25,"range":{"start_line":23,"start_character":4,"end_line":25,"end_character":86},"updated":"2016-03-21 17:49:14.000000000","message":"Share server should be conditional. It should be absent for shares that do not have it. Right now it sets \"None\" link.","commit_id":"167bc8b675555faf868b711d421dd258272fba28"},{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"8c04f50f5a74b7456bc0705b8e2175d9f646d926","unresolved":false,"context_lines":[{"line_number":30,"context_line":"  \u003ch4\u003e{% trans \"Share Instance Details\" %}\u003c/h4\u003e"},{"line_number":31,"context_line":"  \u003chr class\u003d\"header_rule\"\u003e"},{"line_number":32,"context_line":"  \u003cdl\u003e"},{"line_number":33,"context_line":"    \u003cdt\u003e{% trans \"Export Location\" %}\u003c/dt\u003e"},{"line_number":34,"context_line":"    \u003cdd\u003e{{ share_instance.export_location}}\u003c/dd\u003e"},{"line_number":35,"context_line":"  \u003c/dl\u003e"},{"line_number":36,"context_line":"\u003c/div\u003e"}],"source_content_type":"text/html","patch_set":6,"id":"fa0719c6_a42624b8","line":34,"range":{"start_line":33,"start_character":4,"end_line":34,"end_character":48},"updated":"2016-03-21 17:49:14.000000000","message":"List of export locations should be pulled in, not deprecated single \"export_location\" value.","commit_id":"167bc8b675555faf868b711d421dd258272fba28"}],"manila_ui/dashboards/admin/shares/views.py":[{"author":{"_account_id":15100,"name":"zhongjun","email":"jun.zhongjun2@gmail.com","username":"zhongjun2"},"change_message_id":"5445205c99466fda4db501844ecc17d88f555edb","unresolved":false,"context_lines":[{"line_number":214,"context_line":"        share_instance_display_name \u003d share_instance.id"},{"line_number":215,"context_line":"        context[\"share_instance\"] \u003d share_instance"},{"line_number":216,"context_line":"        context[\"share_instance_display_name\"] \u003d share_instance_display_name"},{"line_number":217,"context_line":"        context[\"page_title\"] \u003d _(\"Share Instance Details: %(name)s\") % \\"},{"line_number":218,"context_line":"            {\u0027name\u0027: share_instance_display_name}"},{"line_number":219,"context_line":"        return context"},{"line_number":220,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"1a7b0d38_3927c165","line":217,"range":{"start_line":217,"start_character":71,"end_line":217,"end_character":73},"updated":"2015-12-25 15:34:11.000000000","message":"Please wrap in () and remove use of \\ for line continuation.","commit_id":"3d355b44c8946243441ae58d432f574dfa79d38c"},{"author":{"_account_id":7331,"name":"Julia Varlamova","email":"jvarlamova@mirantis.com","username":"jvarlamova"},"change_message_id":"e511cac165301b248e021f9237c5c8ef752a85a2","unresolved":false,"context_lines":[{"line_number":214,"context_line":"        share_instance_display_name \u003d share_instance.id"},{"line_number":215,"context_line":"        context[\"share_instance\"] \u003d share_instance"},{"line_number":216,"context_line":"        context[\"share_instance_display_name\"] \u003d share_instance_display_name"},{"line_number":217,"context_line":"        context[\"page_title\"] \u003d _(\"Share Instance Details: %(name)s\") % \\"},{"line_number":218,"context_line":"            {\u0027name\u0027: share_instance_display_name}"},{"line_number":219,"context_line":"        return context"},{"line_number":220,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"ba63e191_21735db3","line":217,"range":{"start_line":217,"start_character":71,"end_line":217,"end_character":73},"in_reply_to":"1a7b0d38_3927c165","updated":"2016-01-19 10:26:55.000000000","message":"Done","commit_id":"3d355b44c8946243441ae58d432f574dfa79d38c"}],"manila_ui/tests/dashboards/admin/shares/tests.py":[{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"166af3b2f9764bc0ac842610a98dedf474108c7a","unresolved":false,"context_lines":[{"line_number":15,"context_line":""},{"line_number":16,"context_line":"\"\"\""},{"line_number":17,"context_line":"This test module contains test suites that cover tabs from admin dashboard."},{"line_number":18,"context_line":"Cover by getting generated pages and verifying results."},{"line_number":19,"context_line":"\"\"\""},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"from django.core.urlresolvers import reverse"}],"source_content_type":"text/x-python","patch_set":14,"id":"dab17558_22722eae","line":18,"updated":"2016-05-12 12:00:27.000000000","message":"Suggest:\n  This module contains test suites that cover tabs from admin dashboard\n  by getting generated pages and verifying results.","commit_id":"c579b513b6260e716cf2228f2c4e48cc533e9f26"},{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"3e7001021e08b8ff3aa8225c79fe57e397f03754","unresolved":false,"context_lines":[{"line_number":15,"context_line":""},{"line_number":16,"context_line":"\"\"\""},{"line_number":17,"context_line":"This test module contains test suites that cover tabs from admin dashboard."},{"line_number":18,"context_line":"Cover by getting generated pages and verifying results."},{"line_number":19,"context_line":"\"\"\""},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"from django.core.urlresolvers import reverse"}],"source_content_type":"text/x-python","patch_set":14,"id":"dab17558_3e488287","line":18,"in_reply_to":"dab17558_22722eae","updated":"2016-05-12 14:31:34.000000000","message":"Could be, is current one so bad?","commit_id":"c579b513b6260e716cf2228f2c4e48cc533e9f26"},{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"06c4d1fbebd1380a2cdb682034d5d8089aa8dbc8","unresolved":false,"context_lines":[{"line_number":15,"context_line":""},{"line_number":16,"context_line":"\"\"\""},{"line_number":17,"context_line":"This test module contains test suites that cover tabs from admin dashboard."},{"line_number":18,"context_line":"Cover by getting generated pages and verifying results."},{"line_number":19,"context_line":"\"\"\""},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"from django.core.urlresolvers import reverse"}],"source_content_type":"text/x-python","patch_set":14,"id":"dab17558_93c9a0af","line":18,"in_reply_to":"dab17558_3e488287","updated":"2016-05-12 16:57:45.000000000","message":"Well, I wouldn\u0027t say yours is \"so bad\", I just thought the suggested wording was a bit better.  But no big deal or I would have used a stronger verb than \"Suggest\".","commit_id":"c579b513b6260e716cf2228f2c4e48cc533e9f26"},{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"f12609324dd31a4eb34b8ee13ca3953b452acd95","unresolved":false,"context_lines":[{"line_number":15,"context_line":""},{"line_number":16,"context_line":"\"\"\""},{"line_number":17,"context_line":"This test module contains test suites that cover tabs from admin dashboard."},{"line_number":18,"context_line":"Cover by getting generated pages and verifying results."},{"line_number":19,"context_line":"\"\"\""},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"from django.core.urlresolvers import reverse"}],"source_content_type":"text/x-python","patch_set":14,"id":"dab17558_c9672723","line":18,"in_reply_to":"dab17558_63cc5c6a","updated":"2016-05-17 19:08:24.000000000","message":"Done","commit_id":"c579b513b6260e716cf2228f2c4e48cc533e9f26"},{"author":{"_account_id":11047,"name":"Mark Sturdevant","email":"mark.sturdevant@ibm.com","username":"markstur"},"change_message_id":"af25d9fe4242c821dbb54329ad160795a50b533a","unresolved":false,"context_lines":[{"line_number":15,"context_line":""},{"line_number":16,"context_line":"\"\"\""},{"line_number":17,"context_line":"This test module contains test suites that cover tabs from admin dashboard."},{"line_number":18,"context_line":"Cover by getting generated pages and verifying results."},{"line_number":19,"context_line":"\"\"\""},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"from django.core.urlresolvers import reverse"}],"source_content_type":"text/x-python","patch_set":14,"id":"dab17558_63cc5c6a","line":18,"in_reply_to":"dab17558_93c9a0af","updated":"2016-05-17 18:34:52.000000000","message":"It\u0027s a nit -- but a good suggestion.","commit_id":"c579b513b6260e716cf2228f2c4e48cc533e9f26"},{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"166af3b2f9764bc0ac842610a98dedf474108c7a","unresolved":false,"context_lines":[{"line_number":60,"context_line":"            return_value\u003dtest_data.quota_usage)"},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"        res \u003d self.client.get(INDEX_URL)"},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"        self.assertEqual(res.status_code, 200)"},{"line_number":65,"context_line":"        self.assertTemplateUsed(res, \u0027admin/shares/index.html\u0027)"},{"line_number":66,"context_line":""}],"source_content_type":"text/x-python","patch_set":14,"id":"dab17558_e285c659","line":63,"updated":"2016-05-12 12:00:27.000000000","message":"Thank you for using this whitespace style.","commit_id":"c579b513b6260e716cf2228f2c4e48cc533e9f26"},{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"3e7001021e08b8ff3aa8225c79fe57e397f03754","unresolved":false,"context_lines":[{"line_number":60,"context_line":"            return_value\u003dtest_data.quota_usage)"},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"        res \u003d self.client.get(INDEX_URL)"},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"        self.assertEqual(res.status_code, 200)"},{"line_number":65,"context_line":"        self.assertTemplateUsed(res, \u0027admin/shares/index.html\u0027)"},{"line_number":66,"context_line":""}],"source_content_type":"text/x-python","patch_set":14,"id":"dab17558_3e71a2e1","line":63,"in_reply_to":"dab17558_e285c659","updated":"2016-05-12 14:31:34.000000000","message":"You are welcome. \u003d)","commit_id":"c579b513b6260e716cf2228f2c4e48cc533e9f26"},{"author":{"_account_id":11865,"name":"Clinton Knight","email":"cknight@netapp.com","username":"cknight"},"change_message_id":"1986e51370bf60adc6430cd4a056d92051d5a02b","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright (c) 2014 NetApp, Inc."},{"line_number":2,"context_line":"# Copyright (c) 2015 Mirantis, Inc."},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"},{"line_number":5,"context_line":"#    not use this file except in compliance with the License. You may obtain"}],"source_content_type":"text/x-python","patch_set":15,"id":"dab17558_433959f1","line":2,"range":{"start_line":2,"start_character":16,"end_line":2,"end_character":20},"updated":"2016-05-17 18:14:21.000000000","message":"It\u0027s 2016  :-)","commit_id":"f9662485b45bc8846dd8ddeff0681f157d7dd83e"},{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"c064b28524b35ed51736d220989cf2eff63d2c50","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright (c) 2014 NetApp, Inc."},{"line_number":2,"context_line":"# Copyright (c) 2015 Mirantis, Inc."},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"},{"line_number":5,"context_line":"#    not use this file except in compliance with the License. You may obtain"}],"source_content_type":"text/x-python","patch_set":15,"id":"dab17558_63fbbcc1","line":2,"range":{"start_line":2,"start_character":16,"end_line":2,"end_character":20},"in_reply_to":"dab17558_433959f1","updated":"2016-05-17 18:19:06.000000000","message":"No, it was 2015 when this line was written first time. We just very, very active in Manila UI. \u003d)","commit_id":"f9662485b45bc8846dd8ddeff0681f157d7dd83e"}],"manila_ui/tests/dashboards/project/shares/test_data.py":[{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"166af3b2f9764bc0ac842610a98dedf474108c7a","unresolved":false,"context_lines":[{"line_number":152,"context_line":""},{"line_number":153,"context_line":"share_instance \u003d share_instances.ShareInstance("},{"line_number":154,"context_line":"    share_instances.ShareInstanceManager(None),"},{"line_number":155,"context_line":"    {\u0027id\u0027: \u0027fake_share_instance_no_ss_id\u0027,"},{"line_number":156,"context_line":"     \u0027status\u0027: \u0027available\u0027,"},{"line_number":157,"context_line":"     \u0027host\u0027: \u0027host1@backend1#pool1\u0027,"},{"line_number":158,"context_line":"     \u0027availability_zone\u0027: \u0027zone1\u0027,"}],"source_content_type":"text/x-python","patch_set":14,"id":"dab17558_82d03af9","line":155,"updated":"2016-05-12 12:00:27.000000000","message":"If/when we do oslo versioned objects we\u0027re going to have to change these IDs to valid uuids.","commit_id":"c579b513b6260e716cf2228f2c4e48cc533e9f26"},{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"06c4d1fbebd1380a2cdb682034d5d8089aa8dbc8","unresolved":false,"context_lines":[{"line_number":152,"context_line":""},{"line_number":153,"context_line":"share_instance \u003d share_instances.ShareInstance("},{"line_number":154,"context_line":"    share_instances.ShareInstanceManager(None),"},{"line_number":155,"context_line":"    {\u0027id\u0027: \u0027fake_share_instance_no_ss_id\u0027,"},{"line_number":156,"context_line":"     \u0027status\u0027: \u0027available\u0027,"},{"line_number":157,"context_line":"     \u0027host\u0027: \u0027host1@backend1#pool1\u0027,"},{"line_number":158,"context_line":"     \u0027availability_zone\u0027: \u0027zone1\u0027,"}],"source_content_type":"text/x-python","patch_set":14,"id":"dab17558_73eb5cb1","line":155,"in_reply_to":"dab17558_012a7f7e","updated":"2016-05-12 16:57:45.000000000","message":"Sorry, I was just rambling.  This is ui-side ...  In mainline code we\u0027ll get annoying warnings in unit tests from OVO library. And when we made them go away in cinder by using valid uuids where we had OVO uuid fields we discovered several bugs because we now had some type enforcement - tests that left \u0027self\u0027 out when they needed it, \u00271\u0027 used as volume ID, then cast to an int and used as offset, \u00271\u0027 as vol id and LUN id so unit test had false positive, etc.\n\nJust an anecdote.  Nothing to do here :)","commit_id":"c579b513b6260e716cf2228f2c4e48cc533e9f26"},{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"3e7001021e08b8ff3aa8225c79fe57e397f03754","unresolved":false,"context_lines":[{"line_number":152,"context_line":""},{"line_number":153,"context_line":"share_instance \u003d share_instances.ShareInstance("},{"line_number":154,"context_line":"    share_instances.ShareInstanceManager(None),"},{"line_number":155,"context_line":"    {\u0027id\u0027: \u0027fake_share_instance_no_ss_id\u0027,"},{"line_number":156,"context_line":"     \u0027status\u0027: \u0027available\u0027,"},{"line_number":157,"context_line":"     \u0027host\u0027: \u0027host1@backend1#pool1\u0027,"},{"line_number":158,"context_line":"     \u0027availability_zone\u0027: \u0027zone1\u0027,"}],"source_content_type":"text/x-python","patch_set":14,"id":"dab17558_012a7f7e","line":155,"in_reply_to":"dab17558_82d03af9","updated":"2016-05-12 14:31:34.000000000","message":"Why is that? It is Manila UI-side mock-object. Only presence of that datum influences, not specifics of its type on server side that is mocked anyway.","commit_id":"c579b513b6260e716cf2228f2c4e48cc533e9f26"}]}
