)]}'
{"api-ref/source/v3/parameters.yaml":[{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"80c47e5284b431519bf17f3446335ad4481f6000","unresolved":false,"context_lines":[{"line_number":281,"context_line":"  in: query"},{"line_number":282,"context_line":"  required: false"},{"line_number":283,"context_line":"  type: integer"},{"line_number":284,"context_line":"  min_version: 3.57"},{"line_number":285,"context_line":"marker:"},{"line_number":286,"context_line":"  description: |"},{"line_number":287,"context_line":"    The ID of the last-seen item. Use the ``limit``"}],"source_content_type":"text/x-yaml","patch_set":10,"id":"9fdfeff1_e7e14a2c","line":284,"range":{"start_line":284,"start_character":17,"end_line":284,"end_character":19},"updated":"2019-01-23 15:58:04.000000000","message":"58","commit_id":"60c30ead9d21afcad7b00bc6fe6af30da7c4d7ee"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"80c47e5284b431519bf17f3446335ad4481f6000","unresolved":false,"context_lines":[{"line_number":310,"context_line":"  in: query"},{"line_number":311,"context_line":"  required: false"},{"line_number":312,"context_line":"  type: string"},{"line_number":313,"context_line":"  min_version: 3.57"},{"line_number":314,"context_line":"metadata_query:"},{"line_number":315,"context_line":"  description: |"},{"line_number":316,"context_line":"    Filters results by a metadata key and value pair."}],"source_content_type":"text/x-yaml","patch_set":10,"id":"9fdfeff1_87d2be5b","line":313,"range":{"start_line":313,"start_character":17,"end_line":313,"end_character":19},"updated":"2019-01-23 15:58:04.000000000","message":"58","commit_id":"60c30ead9d21afcad7b00bc6fe6af30da7c4d7ee"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"80c47e5284b431519bf17f3446335ad4481f6000","unresolved":false,"context_lines":[{"line_number":352,"context_line":"  in: query"},{"line_number":353,"context_line":"  required: false"},{"line_number":354,"context_line":"  type: integer"},{"line_number":355,"context_line":"  min_version: 3.57"},{"line_number":356,"context_line":"resource:"},{"line_number":357,"context_line":"  description: |"},{"line_number":358,"context_line":"    Filter for resource name."}],"source_content_type":"text/x-yaml","patch_set":10,"id":"9fdfeff1_a7d58245","line":355,"range":{"start_line":355,"start_character":17,"end_line":355,"end_character":19},"updated":"2019-01-23 15:58:04.000000000","message":"58","commit_id":"60c30ead9d21afcad7b00bc6fe6af30da7c4d7ee"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"80c47e5284b431519bf17f3446335ad4481f6000","unresolved":false,"context_lines":[{"line_number":392,"context_line":"  in: query"},{"line_number":393,"context_line":"  required: false"},{"line_number":394,"context_line":"  type: string"},{"line_number":395,"context_line":"  min_version: 3.57"},{"line_number":396,"context_line":"sort_key:"},{"line_number":397,"context_line":"  description: |"},{"line_number":398,"context_line":"    Sorts by an attribute. A valid value is ``name``,"}],"source_content_type":"text/x-yaml","patch_set":10,"id":"9fdfeff1_27e2f202","line":395,"range":{"start_line":395,"start_character":17,"end_line":395,"end_character":19},"updated":"2019-01-23 15:58:04.000000000","message":"58","commit_id":"60c30ead9d21afcad7b00bc6fe6af30da7c4d7ee"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"80c47e5284b431519bf17f3446335ad4481f6000","unresolved":false,"context_lines":[{"line_number":422,"context_line":"  in: query"},{"line_number":423,"context_line":"  required: false"},{"line_number":424,"context_line":"  type: string"},{"line_number":425,"context_line":"  min_version: 3.57"},{"line_number":426,"context_line":"status_query:"},{"line_number":427,"context_line":"  description: |"},{"line_number":428,"context_line":"    Filters results by a status. Default\u003dNone."}],"source_content_type":"text/x-yaml","patch_set":10,"id":"9fdfeff1_87bcfedc","line":425,"range":{"start_line":425,"start_character":17,"end_line":425,"end_character":19},"updated":"2019-01-23 15:58:04.000000000","message":"58","commit_id":"60c30ead9d21afcad7b00bc6fe6af30da7c4d7ee"}],"cinder/api/microversions.py":[{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"80c47e5284b431519bf17f3446335ad4481f6000","unresolved":false,"context_lines":[{"line_number":153,"context_line":""},{"line_number":154,"context_line":"BACKUP_PROJECT_USER_ID \u003d \u00273.56\u0027"},{"line_number":155,"context_line":""},{"line_number":156,"context_line":"SUPPORT_TRANSFER_PAGINATION \u003d \u00273.57\u0027"},{"line_number":157,"context_line":""},{"line_number":158,"context_line":""},{"line_number":159,"context_line":"def get_mv_header(version):"}],"source_content_type":"text/x-python","patch_set":10,"id":"9fdfeff1_47b616fd","line":156,"range":{"start_line":156,"start_character":33,"end_line":156,"end_character":35},"updated":"2019-01-23 15:58:04.000000000","message":"58","commit_id":"60c30ead9d21afcad7b00bc6fe6af30da7c4d7ee"}],"cinder/api/openstack/api_version_request.py":[{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"80c47e5284b431519bf17f3446335ad4481f6000","unresolved":false,"context_lines":[{"line_number":129,"context_line":"    * 3.55 - Support transfer volume with snapshots"},{"line_number":130,"context_line":"    * 3.56 - Add ``user_id`` attribute to response body of list backup with"},{"line_number":131,"context_line":"             detail and show backup detail APIs."},{"line_number":132,"context_line":"    * 3.57 - Support transfer pagination."},{"line_number":133,"context_line":"\"\"\""},{"line_number":134,"context_line":""},{"line_number":135,"context_line":"# The minimum and maximum versions of the API supported"}],"source_content_type":"text/x-python","patch_set":10,"id":"9fdfeff1_67b9dae7","line":132,"range":{"start_line":132,"start_character":8,"end_line":132,"end_character":10},"updated":"2019-01-23 15:58:04.000000000","message":"58","commit_id":"60c30ead9d21afcad7b00bc6fe6af30da7c4d7ee"}],"cinder/api/openstack/rest_api_version_history.rst":[{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"80c47e5284b431519bf17f3446335ad4481f6000","unresolved":false,"context_lines":[{"line_number":447,"context_line":"Add ``user_id`` attribute to response body of list backup with detail and show"},{"line_number":448,"context_line":"backup detail APIs."},{"line_number":449,"context_line":""},{"line_number":450,"context_line":"3.57"},{"line_number":451,"context_line":"----"},{"line_number":452,"context_line":"Support transfer pagination."}],"source_content_type":"text/x-rst","patch_set":10,"id":"9fdfeff1_27cbd272","line":450,"range":{"start_line":450,"start_character":2,"end_line":450,"end_character":4},"updated":"2019-01-23 15:58:04.000000000","message":"58","commit_id":"60c30ead9d21afcad7b00bc6fe6af30da7c4d7ee"}],"cinder/tests/unit/api/v3/test_volume_transfer.py":[{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"49e125f01b5457b1c9abdea615cc0f1981a60e25","unresolved":false,"context_lines":[{"line_number":112,"context_line":"        self.assertEqual(4, len(res_dict[\u0027transfers\u0027][1]))"},{"line_number":113,"context_line":"        self.assertEqual(transfer1[\u0027id\u0027], res_dict[\u0027transfers\u0027][1][\u0027id\u0027])"},{"line_number":114,"context_line":"        self.assertEqual(\u0027test_transfer\u0027, res_dict[\u0027transfers\u0027][1][\u0027name\u0027])"},{"line_number":115,"context_line":"        self.assertEqual(4, len(res_dict[\u0027transfers\u0027][0]))"},{"line_number":116,"context_line":"        self.assertEqual(transfer2[\u0027id\u0027], res_dict[\u0027transfers\u0027][0][\u0027id\u0027])"},{"line_number":117,"context_line":"        self.assertEqual(\u0027test_transfer\u0027, res_dict[\u0027transfers\u0027][0][\u0027name\u0027])"},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"    def test_list_transfers_with_limit(self):"},{"line_number":120,"context_line":"        volume_id_1 \u003d self._create_volume(size\u003d5)"}],"source_content_type":"text/x-python","patch_set":8,"id":"3f79a3b5_7b3a33c2","line":117,"range":{"start_line":115,"start_character":8,"end_line":117,"end_character":75},"updated":"2018-12-21 06:13:41.000000000","message":"I noticed the indexes are swapped ([1] with [0]) in assert conditions, is this for checking any specific case?","commit_id":"6a75e3dc84e0d0133e435dbf54d024fe06eae4d8"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"05839e00596764f78f58889187fe63cf2aff4ef3","unresolved":false,"context_lines":[{"line_number":112,"context_line":"        self.assertEqual(4, len(res_dict[\u0027transfers\u0027][1]))"},{"line_number":113,"context_line":"        self.assertEqual(transfer1[\u0027id\u0027], res_dict[\u0027transfers\u0027][1][\u0027id\u0027])"},{"line_number":114,"context_line":"        self.assertEqual(\u0027test_transfer\u0027, res_dict[\u0027transfers\u0027][1][\u0027name\u0027])"},{"line_number":115,"context_line":"        self.assertEqual(4, len(res_dict[\u0027transfers\u0027][0]))"},{"line_number":116,"context_line":"        self.assertEqual(transfer2[\u0027id\u0027], res_dict[\u0027transfers\u0027][0][\u0027id\u0027])"},{"line_number":117,"context_line":"        self.assertEqual(\u0027test_transfer\u0027, res_dict[\u0027transfers\u0027][0][\u0027name\u0027])"},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"    def test_list_transfers_with_limit(self):"},{"line_number":120,"context_line":"        volume_id_1 \u003d self._create_volume(size\u003d5)"}],"source_content_type":"text/x-python","patch_set":8,"id":"1f769fc5_dc469c50","line":117,"range":{"start_line":115,"start_character":8,"end_line":117,"end_character":75},"in_reply_to":"3f79a3b5_7b3a33c2","updated":"2018-12-24 04:59:08.000000000","message":"default_key\u003d\u0027created_at\u0027, default_dir\u003d\u0027desc\u0027\n\nhttps://github.com/openstack/cinder/blob/ee1ac54/cinder/api/common.py#L131\n\nBut I don\u0027t think the old microversion response should be changed, and we should add a logic to keep compatible. See next PS.","commit_id":"6a75e3dc84e0d0133e435dbf54d024fe06eae4d8"}],"cinder/transfer/api.py":[{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"49e125f01b5457b1c9abdea615cc0f1981a60e25","unresolved":false,"context_lines":[{"line_number":85,"context_line":"        filters \u003d filters or {}"},{"line_number":86,"context_line":"        context.authorize(policy.GET_ALL_POLICY)"},{"line_number":87,"context_line":"        if context.is_admin and \u0027all_tenants\u0027 in filters:"},{"line_number":88,"context_line":"            del filters[\u0027all_tenants\u0027]"},{"line_number":89,"context_line":"            transfers \u003d self.db.transfer_get_all(context, marker\u003dmarker,"},{"line_number":90,"context_line":"                                                 limit\u003dlimit,"},{"line_number":91,"context_line":"                                                 sort_keys\u003dsort_keys,"}],"source_content_type":"text/x-python","patch_set":8,"id":"3f79a3b5_5badf7e5","line":88,"range":{"start_line":88,"start_character":12,"end_line":88,"end_character":38},"updated":"2018-12-21 06:13:41.000000000","message":"why is this key deleted? no more used?","commit_id":"6a75e3dc84e0d0133e435dbf54d024fe06eae4d8"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"05839e00596764f78f58889187fe63cf2aff4ef3","unresolved":false,"context_lines":[{"line_number":85,"context_line":"        filters \u003d filters or {}"},{"line_number":86,"context_line":"        context.authorize(policy.GET_ALL_POLICY)"},{"line_number":87,"context_line":"        if context.is_admin and \u0027all_tenants\u0027 in filters:"},{"line_number":88,"context_line":"            del filters[\u0027all_tenants\u0027]"},{"line_number":89,"context_line":"            transfers \u003d self.db.transfer_get_all(context, marker\u003dmarker,"},{"line_number":90,"context_line":"                                                 limit\u003dlimit,"},{"line_number":91,"context_line":"                                                 sort_keys\u003dsort_keys,"}],"source_content_type":"text/x-python","patch_set":8,"id":"1f769fc5_fc3a78cb","line":88,"range":{"start_line":88,"start_character":12,"end_line":88,"end_character":38},"in_reply_to":"3f79a3b5_5badf7e5","updated":"2018-12-24 04:59:08.000000000","message":"yes, and after we decided we use transfer_get_all or transfer_get_all_by_project to fetch result, this filters is invalid, and if we still keep this we will do a wrong filter when db query.\n\nnote that we do the same thing in volume get all.[1]\n\n[1] https://github.com/openstack/cinder/blob/7d7dc26/cinder/volume/api.py#L612","commit_id":"6a75e3dc84e0d0133e435dbf54d024fe06eae4d8"}],"releasenotes/notes/add-transfer-pagination-support-7y33u7y68de3cb16.yaml":[{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"80c47e5284b431519bf17f3446335ad4481f6000","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  -  Added transfer pagination support since 3.57."}],"source_content_type":"text/x-yaml","patch_set":10,"id":"9fdfeff1_e7c4ea61","line":3,"range":{"start_line":3,"start_character":47,"end_line":3,"end_character":49},"updated":"2019-01-23 15:58:04.000000000","message":"58","commit_id":"60c30ead9d21afcad7b00bc6fe6af30da7c4d7ee"}]}
