)]}'
{"neutron/db/migration/alembic_migrations/versions/5ac1c354a051_n1kv_segment_alloc.py":[{"author":{"_account_id":2592,"name":"Mark McClain","email":"mark@mcclain.xyz","username":"markmcclain"},"change_message_id":"b4582904e9a8411321e719b4d747e3d21c93f258","unresolved":false,"context_lines":[{"line_number":23,"context_line":""},{"line_number":24,"context_line":"# revision identifiers, used by Alembic."},{"line_number":25,"context_line":"revision \u003d \u00275ac1c354a051\u0027"},{"line_number":26,"context_line":"down_revision \u003d \u002719180cf98af6\u0027"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"# Change to [\u0027*\u0027] if this migration applies to all plugins"},{"line_number":29,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAWH%2F%2FOSw%3D","line":26,"updated":"2014-03-19 10:30:12.000000000","message":"This is the wrong down revision.","commit_id":"04dc18e806a9e6f9e89e99d3d388ee4c0e473057"},{"author":{"_account_id":7018,"name":"Abhishek Raut","email":"rauta@vmware.com","username":"abhiraut"},"change_message_id":"727867cb6e97d9358df7e9ffe3fb5085006429a9","unresolved":false,"context_lines":[{"line_number":23,"context_line":""},{"line_number":24,"context_line":"# revision identifiers, used by Alembic."},{"line_number":25,"context_line":"revision \u003d \u00275ac1c354a051\u0027"},{"line_number":26,"context_line":"down_revision \u003d \u002719180cf98af6\u0027"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"# Change to [\u0027*\u0027] if this migration applies to all plugins"},{"line_number":29,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAWH%2F%2FJ1o%3D","line":26,"in_reply_to":"AAAAWH%2F%2FOSw%3D","updated":"2014-03-19 21:22:27.000000000","message":"Done","commit_id":"04dc18e806a9e6f9e89e99d3d388ee4c0e473057"}],"neutron/plugins/cisco/db/n1kv_db_v2.py":[{"author":{"_account_id":6524,"name":"Henry Gessau","email":"HenryG@gessau.net","username":"gessau"},"change_message_id":"7381b9a0178a6f3c4c37d9e773281c5e8aa5f5f9","unresolved":false,"context_lines":[{"line_number":397,"context_line":"    \"\"\"Return sorted allocatable VLAN IDs.\"\"\""},{"line_number":398,"context_line":"    vlan_ids \u003d set()"},{"line_number":399,"context_line":"    vlan_ids |\u003d set(xrange(seg_min, seg_max + 1))"},{"line_number":400,"context_line":"    return sorted(vlan_ids)"},{"line_number":401,"context_line":""},{"line_number":402,"context_line":""},{"line_number":403,"context_line":"def sync_vlan_allocations(db_session, net_p):"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAVn%2F%2FNu0%3D","line":400,"updated":"2014-03-07 15:55:33.000000000","message":"Maybe this function used to do something more complex before, but now it does no more than:\n\n  xrange(seg_min, seg_max + 1)","commit_id":"c2b61f659ad0187bc4eb2ce6155327f8f0a9abac"},{"author":{"_account_id":7018,"name":"Abhishek Raut","email":"rauta@vmware.com","username":"abhiraut"},"change_message_id":"d4ed98964feddfaf64075ade7b3875e14988e221","unresolved":false,"context_lines":[{"line_number":397,"context_line":"    \"\"\"Return sorted allocatable VLAN IDs.\"\"\""},{"line_number":398,"context_line":"    vlan_ids \u003d set()"},{"line_number":399,"context_line":"    vlan_ids |\u003d set(xrange(seg_min, seg_max + 1))"},{"line_number":400,"context_line":"    return sorted(vlan_ids)"},{"line_number":401,"context_line":""},{"line_number":402,"context_line":""},{"line_number":403,"context_line":"def sync_vlan_allocations(db_session, net_p):"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAVn%2F%2FKgU%3D","line":400,"in_reply_to":"AAAAVn%2F%2FNu0%3D","updated":"2014-03-08 00:31:04.000000000","message":"Done","commit_id":"c2b61f659ad0187bc4eb2ce6155327f8f0a9abac"},{"author":{"_account_id":6524,"name":"Henry Gessau","email":"HenryG@gessau.net","username":"gessau"},"change_message_id":"7381b9a0178a6f3c4c37d9e773281c5e8aa5f5f9","unresolved":false,"context_lines":[{"line_number":412,"context_line":"    with db_session.begin(subtransactions\u003dTrue):"},{"line_number":413,"context_line":"        seg_min, seg_max \u003d get_segment_range(net_p)"},{"line_number":414,"context_line":"        vlan_ids \u003d _get_sorted_vlan_ids(seg_min, seg_max)"},{"line_number":415,"context_line":"        for vlan_id in vlan_ids:"},{"line_number":416,"context_line":"            try:"},{"line_number":417,"context_line":"                get_vlan_allocation(db_session,"},{"line_number":418,"context_line":"                                    net_p[\u0027physical_network\u0027],"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAVn%2F%2FNuM%3D","line":415,"updated":"2014-03-07 15:55:33.000000000","message":"As noted above, the _get_sorted_vlan_ids() is not really needed and you can just do:\n\n    for vlan_id in xrange(seg_min, seg_max + 1):","commit_id":"c2b61f659ad0187bc4eb2ce6155327f8f0a9abac"},{"author":{"_account_id":7018,"name":"Abhishek Raut","email":"rauta@vmware.com","username":"abhiraut"},"change_message_id":"d4ed98964feddfaf64075ade7b3875e14988e221","unresolved":false,"context_lines":[{"line_number":412,"context_line":"    with db_session.begin(subtransactions\u003dTrue):"},{"line_number":413,"context_line":"        seg_min, seg_max \u003d get_segment_range(net_p)"},{"line_number":414,"context_line":"        vlan_ids \u003d _get_sorted_vlan_ids(seg_min, seg_max)"},{"line_number":415,"context_line":"        for vlan_id in vlan_ids:"},{"line_number":416,"context_line":"            try:"},{"line_number":417,"context_line":"                get_vlan_allocation(db_session,"},{"line_number":418,"context_line":"                                    net_p[\u0027physical_network\u0027],"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAVn%2F%2FKgM%3D","line":415,"in_reply_to":"AAAAVn%2F%2FNuM%3D","updated":"2014-03-08 00:31:04.000000000","message":"Done","commit_id":"c2b61f659ad0187bc4eb2ce6155327f8f0a9abac"},{"author":{"_account_id":6524,"name":"Henry Gessau","email":"HenryG@gessau.net","username":"gessau"},"change_message_id":"7381b9a0178a6f3c4c37d9e773281c5e8aa5f5f9","unresolved":false,"context_lines":[{"line_number":578,"context_line":"                    \"%(vxlan_max)s\"),"},{"line_number":579,"context_line":"                  {\"vxlan_min\": vxlan_min, \"vxlan_max\": vxlan_max})"},{"line_number":580,"context_line":"    else:"},{"line_number":581,"context_line":"        vxlan_ids |\u003d set(xrange(vxlan_min, vxlan_max + 1))"},{"line_number":582,"context_line":"    return sorted(vxlan_ids)"},{"line_number":583,"context_line":""},{"line_number":584,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAVn%2F%2FNoA%3D","line":581,"updated":"2014-03-07 15:55:33.000000000","message":"Similar comment as above.","commit_id":"c2b61f659ad0187bc4eb2ce6155327f8f0a9abac"},{"author":{"_account_id":7018,"name":"Abhishek Raut","email":"rauta@vmware.com","username":"abhiraut"},"change_message_id":"d4ed98964feddfaf64075ade7b3875e14988e221","unresolved":false,"context_lines":[{"line_number":578,"context_line":"                    \"%(vxlan_max)s\"),"},{"line_number":579,"context_line":"                  {\"vxlan_min\": vxlan_min, \"vxlan_max\": vxlan_max})"},{"line_number":580,"context_line":"    else:"},{"line_number":581,"context_line":"        vxlan_ids |\u003d set(xrange(vxlan_min, vxlan_max + 1))"},{"line_number":582,"context_line":"    return sorted(vxlan_ids)"},{"line_number":583,"context_line":""},{"line_number":584,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAVn%2F%2FKSc%3D","line":581,"in_reply_to":"AAAAVn%2F%2FNoA%3D","updated":"2014-03-08 00:31:04.000000000","message":"Done","commit_id":"c2b61f659ad0187bc4eb2ce6155327f8f0a9abac"},{"author":{"_account_id":6524,"name":"Henry Gessau","email":"HenryG@gessau.net","username":"gessau"},"change_message_id":"7381b9a0178a6f3c4c37d9e773281c5e8aa5f5f9","unresolved":false,"context_lines":[{"line_number":590,"context_line":"    :param net_p: network profile dictionary"},{"line_number":591,"context_line":"    \"\"\""},{"line_number":592,"context_line":"    seg_min, seg_max \u003d get_segment_range(net_p)"},{"line_number":593,"context_line":"    vxlan_ids \u003d _get_sorted_vxlan_ids(seg_min, seg_max)"},{"line_number":594,"context_line":"    with db_session.begin(subtransactions\u003dTrue):"},{"line_number":595,"context_line":"        for vxlan_id in vxlan_ids:"},{"line_number":596,"context_line":"            try:"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAVn%2F%2FNoE%3D","line":593,"updated":"2014-03-07 15:55:33.000000000","message":"All this is really doing is checking that the vxlan range is not too big. I don\u0027t think you need a function for that. It would be better to check the range size directly here and return immediately if it is too big.","commit_id":"c2b61f659ad0187bc4eb2ce6155327f8f0a9abac"},{"author":{"_account_id":7018,"name":"Abhishek Raut","email":"rauta@vmware.com","username":"abhiraut"},"change_message_id":"d4ed98964feddfaf64075ade7b3875e14988e221","unresolved":false,"context_lines":[{"line_number":590,"context_line":"    :param net_p: network profile dictionary"},{"line_number":591,"context_line":"    \"\"\""},{"line_number":592,"context_line":"    seg_min, seg_max \u003d get_segment_range(net_p)"},{"line_number":593,"context_line":"    vxlan_ids \u003d _get_sorted_vxlan_ids(seg_min, seg_max)"},{"line_number":594,"context_line":"    with db_session.begin(subtransactions\u003dTrue):"},{"line_number":595,"context_line":"        for vxlan_id in vxlan_ids:"},{"line_number":596,"context_line":"            try:"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAVn%2F%2FKSU%3D","line":593,"in_reply_to":"AAAAVn%2F%2FNoE%3D","updated":"2014-03-08 00:31:04.000000000","message":"Done","commit_id":"c2b61f659ad0187bc4eb2ce6155327f8f0a9abac"}],"neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py":[{"author":{"_account_id":6659,"name":"Paul Michali","email":"pc@michali.net","username":"pcm"},"change_message_id":"92a6976d2158884891324a0b7944c7f52d3058a1","unresolved":false,"context_lines":[{"line_number":282,"context_line":"                        break"},{"line_number":283,"context_line":"                else:"},{"line_number":284,"context_line":"                    msg \u003d _(\"Unknown provider:physical_network \""},{"line_number":285,"context_line":"                            \"%s\"), physical_network"},{"line_number":286,"context_line":"                    raise n_exc.InvalidInput(error_message\u003dmsg)"},{"line_number":287,"context_line":"            else:"},{"line_number":288,"context_line":"                msg \u003d _(\"provider:physical_network required\")"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAVn%2F%2FYmU%3D","line":285,"updated":"2014-03-06 13:36:09.000000000","message":"Nit: for readability, probably could put %s on previous line.","commit_id":"b0a4a0a8e7f2184696e825390330f1e0c0f3e053"},{"author":{"_account_id":7018,"name":"Abhishek Raut","email":"rauta@vmware.com","username":"abhiraut"},"change_message_id":"33c447b9cdc54b196e7468786ccc65bb594ff595","unresolved":false,"context_lines":[{"line_number":282,"context_line":"                        break"},{"line_number":283,"context_line":"                else:"},{"line_number":284,"context_line":"                    msg \u003d _(\"Unknown provider:physical_network \""},{"line_number":285,"context_line":"                            \"%s\"), physical_network"},{"line_number":286,"context_line":"                    raise n_exc.InvalidInput(error_message\u003dmsg)"},{"line_number":287,"context_line":"            else:"},{"line_number":288,"context_line":"                msg \u003d _(\"provider:physical_network required\")"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAVn%2F%2FTmA%3D","line":285,"in_reply_to":"AAAAVn%2F%2FYmU%3D","updated":"2014-03-07 00:58:52.000000000","message":"Done","commit_id":"b0a4a0a8e7f2184696e825390330f1e0c0f3e053"}],"neutron/tests/unit/cisco/n1kv/test_n1kv_plugin.py":[{"author":{"_account_id":6659,"name":"Paul Michali","email":"pc@michali.net","username":"pcm"},"change_message_id":"92a6976d2158884891324a0b7944c7f52d3058a1","unresolved":false,"context_lines":[{"line_number":320,"context_line":"        net_p_req \u003d self.new_create_request(\u0027network_profiles\u0027, net_p_dict)"},{"line_number":321,"context_line":"        self.deserialize(self.fmt,"},{"line_number":322,"context_line":"                         net_p_req.get_response(self.ext_api))"},{"line_number":323,"context_line":"        for vlan in xrange(VLAN_MIN, VLAN_MAX + 1):"},{"line_number":324,"context_line":"            self.assertIsNotNone(n1kv_db_v2.get_vlan_allocation(db_session,"},{"line_number":325,"context_line":"                                                                PHYS_NET,"},{"line_number":326,"context_line":"                                                                vlan))"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAVn%2F%2FYjw%3D","line":323,"updated":"2014-03-06 13:36:09.000000000","message":"Given the range is small, can use range(), which will provide Python 3 compatibility.","commit_id":"b0a4a0a8e7f2184696e825390330f1e0c0f3e053"},{"author":{"_account_id":7018,"name":"Abhishek Raut","email":"rauta@vmware.com","username":"abhiraut"},"change_message_id":"33c447b9cdc54b196e7468786ccc65bb594ff595","unresolved":false,"context_lines":[{"line_number":320,"context_line":"        net_p_req \u003d self.new_create_request(\u0027network_profiles\u0027, net_p_dict)"},{"line_number":321,"context_line":"        self.deserialize(self.fmt,"},{"line_number":322,"context_line":"                         net_p_req.get_response(self.ext_api))"},{"line_number":323,"context_line":"        for vlan in xrange(VLAN_MIN, VLAN_MAX + 1):"},{"line_number":324,"context_line":"            self.assertIsNotNone(n1kv_db_v2.get_vlan_allocation(db_session,"},{"line_number":325,"context_line":"                                                                PHYS_NET,"},{"line_number":326,"context_line":"                                                                vlan))"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAVn%2F%2FTlA%3D","line":323,"in_reply_to":"AAAAVn%2F%2FYjw%3D","updated":"2014-03-07 00:58:52.000000000","message":"Done","commit_id":"b0a4a0a8e7f2184696e825390330f1e0c0f3e053"},{"author":{"_account_id":6659,"name":"Paul Michali","email":"pc@michali.net","username":"pcm"},"change_message_id":"92a6976d2158884891324a0b7944c7f52d3058a1","unresolved":false,"context_lines":[{"line_number":348,"context_line":"                                                            PHYS_NET,"},{"line_number":349,"context_line":"                                                            VLAN_MIN))"},{"line_number":350,"context_line":"        self._delete(\u0027network_profiles\u0027, net_p[\u0027network_profile\u0027][\u0027id\u0027])"},{"line_number":351,"context_line":"        for vlan in xrange(VLAN_MIN, VLAN_MAX + 1):"},{"line_number":352,"context_line":"            self.assertRaises(c_exc.VlanIDNotFound,"},{"line_number":353,"context_line":"                              n1kv_db_v2.get_vlan_allocation,"},{"line_number":354,"context_line":"                              db_session,"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAVn%2F%2FYjs%3D","line":351,"updated":"2014-03-06 13:36:09.000000000","message":"ditto","commit_id":"b0a4a0a8e7f2184696e825390330f1e0c0f3e053"},{"author":{"_account_id":7018,"name":"Abhishek Raut","email":"rauta@vmware.com","username":"abhiraut"},"change_message_id":"33c447b9cdc54b196e7468786ccc65bb594ff595","unresolved":false,"context_lines":[{"line_number":348,"context_line":"                                                            PHYS_NET,"},{"line_number":349,"context_line":"                                                            VLAN_MIN))"},{"line_number":350,"context_line":"        self._delete(\u0027network_profiles\u0027, net_p[\u0027network_profile\u0027][\u0027id\u0027])"},{"line_number":351,"context_line":"        for vlan in xrange(VLAN_MIN, VLAN_MAX + 1):"},{"line_number":352,"context_line":"            self.assertRaises(c_exc.VlanIDNotFound,"},{"line_number":353,"context_line":"                              n1kv_db_v2.get_vlan_allocation,"},{"line_number":354,"context_line":"                              db_session,"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAVn%2F%2FTk0%3D","line":351,"in_reply_to":"AAAAVn%2F%2FYjs%3D","updated":"2014-03-07 00:58:52.000000000","message":"Done","commit_id":"b0a4a0a8e7f2184696e825390330f1e0c0f3e053"}]}
