)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},"change_message_id":"6f9d4cb0745ba9ec0e1b1ca8937c1d50c35bed8e","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Pushkar Umaranikar \u003cpushkar.umaranikar@intel.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2016-02-29 16:03:05 +0000"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"\"nova list-extensions\" not shwoing summary for all"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Change nova extensions API to show summary"},{"line_number":10,"context_line":"description for V2 API. Currently,"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"9aed3d3a_332abb90","line":7,"range":{"start_line":7,"start_character":27,"end_line":7,"end_character":34},"updated":"2016-03-01 05:19:47.000000000","message":"showing?","commit_id":"9cd478fe697ecd7625301ef9bee0092ebf2cbf58"},{"author":{"_account_id":18335,"name":"Pushkar Umaranikar","email":"pushkar.umaranikar@intel.com","username":"pushkarumaranikar"},"change_message_id":"707474d24b2c72b3dfd816698220743e1dccf65a","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Pushkar Umaranikar \u003cpushkar.umaranikar@intel.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2016-02-29 16:03:05 +0000"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"\"nova list-extensions\" not shwoing summary for all"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Change nova extensions API to show summary"},{"line_number":10,"context_line":"description for V2 API. Currently,"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"7af24918_1c92839e","line":7,"range":{"start_line":7,"start_character":27,"end_line":7,"end_character":34},"in_reply_to":"9aed3d3a_332abb90","updated":"2016-03-02 18:09:44.000000000","message":"Done","commit_id":"9cd478fe697ecd7625301ef9bee0092ebf2cbf58"},{"author":{"_account_id":6062,"name":"jichenjc","email":"jichenjc@cn.ibm.com","username":"jichenjc"},"change_message_id":"c779623d14c7cd355fc50b94919703be959a6f36","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Change nova extensions API to show summary"},{"line_number":10,"context_line":"description for V2 API. Currently,"},{"line_number":11,"context_line":"description is available only for V21 API."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Change-Id: Iefd087baddd65a52a20f1b98ae3efe22b3c5085c"},{"line_number":14,"context_line":"Closes-Bug: #1532098"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"9aed3d3a_d2bc3c08","line":11,"range":{"start_line":11,"start_character":34,"end_line":11,"end_character":37},"updated":"2016-02-29 20:47:41.000000000","message":"guess not V2 has this problem ? it might be V21 legacy compatible mode has this problem?","commit_id":"9cd478fe697ecd7625301ef9bee0092ebf2cbf58"},{"author":{"_account_id":6062,"name":"jichenjc","email":"jichenjc@cn.ibm.com","username":"jichenjc"},"change_message_id":"cd12e711b00d77a5a441632766c9115a15482402","unresolved":false,"context_lines":[{"line_number":7,"context_line":"\"nova list-extensions\" not showing summary for all"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Change nova extensions API to show summary"},{"line_number":10,"context_line":"description for V2 API."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: Iefd087baddd65a52a20f1b98ae3efe22b3c5085c"},{"line_number":13,"context_line":"Closes-Bug: #1532098"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"7aa08908_9b1ce66b","line":10,"range":{"start_line":10,"start_character":16,"end_line":10,"end_character":18},"updated":"2016-06-16 15:26:08.000000000","message":"V2 legacy code is gone, so this is for V2.1 compatible to provide more info ?","commit_id":"3ff232c7d702b5ea9eceeccc6ed0df207a6dea96"}],"doc/api_samples/extension-info/extensions-list-resp-v21-compatible.json":[{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"5742fa08b49c62b1310456a9f005d7c85ff58650","unresolved":false,"context_lines":[{"line_number":234,"context_line":"        },"},{"line_number":235,"context_line":"        {"},{"line_number":236,"context_line":"            \"alias\": \"os-cloudpipe-update\","},{"line_number":237,"context_line":"            \"description\": \"Adds the ability to set the VPN IP/port for cloudpipe instances.\","},{"line_number":238,"context_line":"            \"links\": [],"},{"line_number":239,"context_line":"            \"name\": \"CloudpipeUpdate\","},{"line_number":240,"context_line":"            \"namespace\": \"http://docs.openstack.org/compute/ext/fake_xml\","}],"source_content_type":"application/json","patch_set":7,"id":"dada55a8_ee209cf9","line":237,"range":{"start_line":237,"start_character":56,"end_line":237,"end_character":62},"updated":"2016-07-26 01:13:49.000000000","message":"here should be \"vpn ip\" for the same description for legacy v2 code.","commit_id":"68ed994804ed03cbce9a249196abc3785fca5662"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"5742fa08b49c62b1310456a9f005d7c85ff58650","unresolved":false,"context_lines":[{"line_number":674,"context_line":"        },"},{"line_number":675,"context_line":"        {"},{"line_number":676,"context_line":"            \"alias\": \"os-server-list-multi-status\","},{"line_number":677,"context_line":"            \"description\": \"Allow to specify multiple status values concurrently in the servers list API..\","},{"line_number":678,"context_line":"            \"links\": [],"},{"line_number":679,"context_line":"            \"name\": \"ServerListMultiStatus\","},{"line_number":680,"context_line":"            \"namespace\": \"http://docs.openstack.org/compute/ext/fake_xml\","}],"source_content_type":"application/json","patch_set":7,"id":"dada55a8_6e6dcc03","line":677,"updated":"2016-07-26 01:13:49.000000000","message":"here should be\n\n Allow to filter the servers by a set of status values.","commit_id":"68ed994804ed03cbce9a249196abc3785fca5662"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"5742fa08b49c62b1310456a9f005d7c85ff58650","unresolved":false,"context_lines":[{"line_number":690,"context_line":"        },"},{"line_number":691,"context_line":"        {"},{"line_number":692,"context_line":"            \"alias\": \"os-server-sort-keys\","},{"line_number":693,"context_line":"            \"description\": \"Add sort keys and directions to the Server GET v2 API.\","},{"line_number":694,"context_line":"            \"links\": [],"},{"line_number":695,"context_line":"            \"name\": \"ServerSortKeys\","},{"line_number":696,"context_line":"            \"namespace\": \"http://docs.openstack.org/compute/ext/fake_xml\","}],"source_content_type":"application/json","patch_set":7,"id":"dada55a8_8e72c0e1","line":693,"updated":"2016-07-26 01:13:49.000000000","message":"here should be\n\n Add sorting support in get Server v2 API.","commit_id":"68ed994804ed03cbce9a249196abc3785fca5662"}],"nova/api/openstack/compute/extension_info.py":[{"author":{"_account_id":6062,"name":"jichenjc","email":"jichenjc@cn.ibm.com","username":"jichenjc"},"change_message_id":"c779623d14c7cd355fc50b94919703be959a6f36","unresolved":false,"context_lines":[{"line_number":55,"context_line":"                      \u0027 IP/port for cloudpipe instances\u0027)}],"},{"line_number":56,"context_line":"    \u0027servers\u0027: [{\u0027name\u0027: \u0027Createserverext\u0027, \u0027alias\u0027: \u0027os-create-server-ext\u0027,"},{"line_number":57,"context_line":"                 \u0027description\u0027: (\u0027Extended support to the Create Server\u0027"},{"line_number":58,"context_line":"                 \u0027 v1.1 API.\u0027)},"},{"line_number":59,"context_line":"                {\u0027name\u0027: \u0027ExtendedIpsMac\u0027, \u0027alias\u0027: \u0027OS-EXT-IPS-MAC\u0027,"},{"line_number":60,"context_line":"                 \u0027description\u0027: \u0027Adds mac address parameter to the ip list.\u0027},"},{"line_number":61,"context_line":"                {\u0027name\u0027: \u0027ExtendedIps\u0027, \u0027alias\u0027: \u0027OS-EXT-IPS\u0027,"}],"source_content_type":"text/x-python","patch_set":1,"id":"9aed3d3a_914116ac","line":58,"range":{"start_line":58,"start_character":19,"end_line":58,"end_character":21},"updated":"2016-02-29 20:47:41.000000000","message":"I guess we don\u0027t have v1.1 API now in the tree..\n\nbut consider backward compatible , we might keep it","commit_id":"9cd478fe697ecd7625301ef9bee0092ebf2cbf58"},{"author":{"_account_id":18335,"name":"Pushkar Umaranikar","email":"pushkar.umaranikar@intel.com","username":"pushkarumaranikar"},"change_message_id":"707474d24b2c72b3dfd816698220743e1dccf65a","unresolved":false,"context_lines":[{"line_number":55,"context_line":"                      \u0027 IP/port for cloudpipe instances\u0027)}],"},{"line_number":56,"context_line":"    \u0027servers\u0027: [{\u0027name\u0027: \u0027Createserverext\u0027, \u0027alias\u0027: \u0027os-create-server-ext\u0027,"},{"line_number":57,"context_line":"                 \u0027description\u0027: (\u0027Extended support to the Create Server\u0027"},{"line_number":58,"context_line":"                 \u0027 v1.1 API.\u0027)},"},{"line_number":59,"context_line":"                {\u0027name\u0027: \u0027ExtendedIpsMac\u0027, \u0027alias\u0027: \u0027OS-EXT-IPS-MAC\u0027,"},{"line_number":60,"context_line":"                 \u0027description\u0027: \u0027Adds mac address parameter to the ip list.\u0027},"},{"line_number":61,"context_line":"                {\u0027name\u0027: \u0027ExtendedIps\u0027, \u0027alias\u0027: \u0027OS-EXT-IPS\u0027,"}],"source_content_type":"text/x-python","patch_set":1,"id":"7af24918_11ef0cb1","line":58,"range":{"start_line":58,"start_character":19,"end_line":58,"end_character":21},"in_reply_to":"9aed3d3a_914116ac","updated":"2016-03-02 18:09:44.000000000","message":"I am using class description from nova/api/openstack/compute/legacy_v2/contrib/createserverext.py","commit_id":"9cd478fe697ecd7625301ef9bee0092ebf2cbf58"},{"author":{"_account_id":6062,"name":"jichenjc","email":"jichenjc@cn.ibm.com","username":"jichenjc"},"change_message_id":"c779623d14c7cd355fc50b94919703be959a6f36","unresolved":false,"context_lines":[{"line_number":86,"context_line":"    \u0027os-evacuate\u0027: [{\u0027name\u0027: \u0027ExtendedEvacuateFindHost\u0027,"},{"line_number":87,"context_line":"                     \u0027alias\u0027: \u0027os-extended-evacuate-find-host\u0027,"},{"line_number":88,"context_line":"                     \u0027description\u0027: (\u0027Enables server evacuation without\u0027"},{"line_number":89,"context_line":"                     \u0027 target host. Schedular will select one to target.\u0027)}],"},{"line_number":90,"context_line":"    \u0027os-floating-ips\u0027: [{\u0027name\u0027: \u0027ExtendedFloatingIps\u0027,"},{"line_number":91,"context_line":"                     \u0027alias\u0027: \u0027os-extended-floating-ips\u0027,"},{"line_number":92,"context_line":"                     \u0027description\u0027: (\u0027Adds optinal fixed_address to the add\u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"9aed3d3a_72129058","line":89,"range":{"start_line":89,"start_character":36,"end_line":89,"end_character":45},"updated":"2016-02-29 20:47:41.000000000","message":"typo, Scheduler","commit_id":"9cd478fe697ecd7625301ef9bee0092ebf2cbf58"},{"author":{"_account_id":18335,"name":"Pushkar Umaranikar","email":"pushkar.umaranikar@intel.com","username":"pushkarumaranikar"},"change_message_id":"707474d24b2c72b3dfd816698220743e1dccf65a","unresolved":false,"context_lines":[{"line_number":86,"context_line":"    \u0027os-evacuate\u0027: [{\u0027name\u0027: \u0027ExtendedEvacuateFindHost\u0027,"},{"line_number":87,"context_line":"                     \u0027alias\u0027: \u0027os-extended-evacuate-find-host\u0027,"},{"line_number":88,"context_line":"                     \u0027description\u0027: (\u0027Enables server evacuation without\u0027"},{"line_number":89,"context_line":"                     \u0027 target host. Schedular will select one to target.\u0027)}],"},{"line_number":90,"context_line":"    \u0027os-floating-ips\u0027: [{\u0027name\u0027: \u0027ExtendedFloatingIps\u0027,"},{"line_number":91,"context_line":"                     \u0027alias\u0027: \u0027os-extended-floating-ips\u0027,"},{"line_number":92,"context_line":"                     \u0027description\u0027: (\u0027Adds optinal fixed_address to the add\u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"7af24918_1c3603e6","line":89,"range":{"start_line":89,"start_character":36,"end_line":89,"end_character":45},"in_reply_to":"9aed3d3a_72129058","updated":"2016-03-02 18:09:44.000000000","message":"Done","commit_id":"9cd478fe697ecd7625301ef9bee0092ebf2cbf58"},{"author":{"_account_id":6062,"name":"jichenjc","email":"jichenjc@cn.ibm.com","username":"jichenjc"},"change_message_id":"c779623d14c7cd355fc50b94919703be959a6f36","unresolved":false,"context_lines":[{"line_number":117,"context_line":"                    \u0027 attachment.\u0027)}],"},{"line_number":118,"context_line":"    \u0027os-server-groups\u0027: [{\u0027name\u0027: \u0027ServerGroupQuotas\u0027,"},{"line_number":119,"context_line":"                    \u0027alias\u0027: \u0027os-server-group-quotas\u0027,"},{"line_number":120,"context_line":"                    \u0027description\u0027: \u0027Adds quota support to server groups.\u0027}],"},{"line_number":121,"context_line":"}"},{"line_number":122,"context_line":""},{"line_number":123,"context_line":"# v2.1 plugins which should never appear in the v2 extension list"}],"source_content_type":"text/x-python","patch_set":1,"id":"9aed3d3a_32a808db","line":120,"range":{"start_line":120,"start_character":32,"end_line":120,"end_character":34},"updated":"2016-02-29 20:47:41.000000000","message":"any reason some extension has () for description and some do not have?","commit_id":"9cd478fe697ecd7625301ef9bee0092ebf2cbf58"},{"author":{"_account_id":18335,"name":"Pushkar Umaranikar","email":"pushkar.umaranikar@intel.com","username":"pushkarumaranikar"},"change_message_id":"707474d24b2c72b3dfd816698220743e1dccf65a","unresolved":false,"context_lines":[{"line_number":117,"context_line":"                    \u0027 attachment.\u0027)}],"},{"line_number":118,"context_line":"    \u0027os-server-groups\u0027: [{\u0027name\u0027: \u0027ServerGroupQuotas\u0027,"},{"line_number":119,"context_line":"                    \u0027alias\u0027: \u0027os-server-group-quotas\u0027,"},{"line_number":120,"context_line":"                    \u0027description\u0027: \u0027Adds quota support to server groups.\u0027}],"},{"line_number":121,"context_line":"}"},{"line_number":122,"context_line":""},{"line_number":123,"context_line":"# v2.1 plugins which should never appear in the v2 extension list"}],"source_content_type":"text/x-python","patch_set":1,"id":"7af24918_3195e8dd","line":120,"range":{"start_line":120,"start_character":32,"end_line":120,"end_character":34},"in_reply_to":"9aed3d3a_32a808db","updated":"2016-03-02 18:09:44.000000000","message":"I used () to represent line continuation with string. For some extensions, we have multi line description.","commit_id":"9cd478fe697ecd7625301ef9bee0092ebf2cbf58"}]}
