)]}'
{"tacker/common/exceptions.py":[{"author":{"_account_id":26588,"name":"Hiroyuki Jo","email":"joxyuki@gmail.com","username":"joxyuki"},"change_message_id":"f9b43906662112ce59267c3ef3acf529ea06bb3b","unresolved":false,"context_lines":[{"line_number":210,"context_line":""},{"line_number":211,"context_line":""},{"line_number":212,"context_line":"class VnfFlavorNotFound(NotFound):"},{"line_number":213,"context_line":"    message \u003d _(\"No vnf flavor with id %(id)s.\")"},{"line_number":214,"context_line":""},{"line_number":215,"context_line":""},{"line_number":216,"context_line":"class VnfSoftwareImageNotFound(NotFound):"}],"source_content_type":"text/x-python","patch_set":4,"id":"5faad753_10fa9274","line":213,"range":{"start_line":213,"start_character":24,"end_line":213,"end_character":30},"updated":"2019-09-11 07:39:07.000000000","message":"I prefer \u0027deployment flavour\u0027 here.","commit_id":"cb2dfefeb8c537bd6fa8e1505db802d42f2eafe6"},{"author":{"_account_id":26588,"name":"Hiroyuki Jo","email":"joxyuki@gmail.com","username":"joxyuki"},"change_message_id":"f9b43906662112ce59267c3ef3acf529ea06bb3b","unresolved":false,"context_lines":[{"line_number":209,"context_line":"    message \u003d _(\"No vnf package with id %(id)s.\")"},{"line_number":210,"context_line":""},{"line_number":211,"context_line":""},{"line_number":212,"context_line":"class VnfFlavorNotFound(NotFound):"},{"line_number":213,"context_line":"    message \u003d _(\"No vnf flavor with id %(id)s.\")"},{"line_number":214,"context_line":""},{"line_number":215,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"5faad753_d1f4e0d1","line":212,"range":{"start_line":212,"start_character":9,"end_line":212,"end_character":15},"updated":"2019-09-11 07:39:07.000000000","message":"Flavour (or is DeplymentFlavour better?)","commit_id":"4c0692fba535df74f3263a07fca4e552362be111"}],"tacker/db/db_sqlalchemy/models.py":[{"author":{"_account_id":26588,"name":"Hiroyuki Jo","email":"joxyuki@gmail.com","username":"joxyuki"},"change_message_id":"8c0c751ea8e82fb73708a6c0ebf5dccaf2a0885d","unresolved":false,"context_lines":[{"line_number":23,"context_line":""},{"line_number":24,"context_line":"class VnfPackagesUserData(model_base.BASE, models.SoftDeleteMixin,"},{"line_number":25,"context_line":"                  models.TimestampMixin):"},{"line_number":26,"context_line":"    \"\"\"Contains all info about vnf packages user defined data.\"\"\""},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"    __tablename__ \u003d \u0027vnf_packages_user_data\u0027"},{"line_number":29,"context_line":"    id \u003d sa.Column(sa.Integer, nullable\u003dFalse, primary_key\u003dTrue)"}],"source_content_type":"text/x-python","patch_set":2,"id":"7faddb67_342063b0","line":26,"range":{"start_line":26,"start_character":44,"end_line":26,"end_character":62},"updated":"2019-09-04 04:03:08.000000000","message":"I prefer `userDefinedData which is given in VNF Package create/update request`.","commit_id":"460e33dedc896c7f98289435a43a9f00d5c2ab31"}],"tacker/objects/base.py":[{"author":{"_account_id":18955,"name":"dharmendra","email":"dharmendra.kushwaha@gmail.com","username":"dharmendra"},"change_message_id":"9017bbecf8e840d0c9631ec0e5aaab549d7ae4dc","unresolved":false,"context_lines":[{"line_number":13,"context_line":"#    under the License."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"import datetime"},{"line_number":16,"context_line":"from oslo_utils import versionutils"},{"line_number":17,"context_line":"from oslo_versionedobjects import base as ovoo_base"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"from tacker import objects"}],"source_content_type":"text/x-python","patch_set":2,"id":"7faddb67_903a9595","line":16,"updated":"2019-09-18 10:07:24.000000000","message":"add a blank line","commit_id":"460e33dedc896c7f98289435a43a9f00d5c2ab31"},{"author":{"_account_id":26588,"name":"Hiroyuki Jo","email":"joxyuki@gmail.com","username":"joxyuki"},"change_message_id":"8c0c751ea8e82fb73708a6c0ebf5dccaf2a0885d","unresolved":false,"context_lines":[{"line_number":122,"context_line":"    This adds the fields that we use in common for most persistent objects."},{"line_number":123,"context_line":"    \"\"\""},{"line_number":124,"context_line":"    fields \u003d {"},{"line_number":125,"context_line":"        \u0027created_at\u0027: obj_fields.DateTimeField(nullable\u003dTrue),"},{"line_number":126,"context_line":"        \u0027updated_at\u0027: obj_fields.DateTimeField(nullable\u003dTrue),"},{"line_number":127,"context_line":"        \u0027deleted_at\u0027: obj_fields.DateTimeField(nullable\u003dTrue),"},{"line_number":128,"context_line":"        \u0027deleted\u0027: obj_fields.BooleanField(default\u003dFalse)"}],"source_content_type":"text/x-python","patch_set":2,"id":"7faddb67_d428ef98","line":125,"range":{"start_line":125,"start_character":56,"end_line":125,"end_character":60},"updated":"2019-09-04 04:03:08.000000000","message":"this should be False.","commit_id":"460e33dedc896c7f98289435a43a9f00d5c2ab31"},{"author":{"_account_id":18955,"name":"dharmendra","email":"dharmendra.kushwaha@gmail.com","username":"dharmendra"},"change_message_id":"9017bbecf8e840d0c9631ec0e5aaab549d7ae4dc","unresolved":false,"context_lines":[{"line_number":13,"context_line":"#    under the License."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"import datetime"},{"line_number":16,"context_line":"from oslo_utils import versionutils"},{"line_number":17,"context_line":"from oslo_versionedobjects import base as ovoo_base"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"from tacker import objects"}],"source_content_type":"text/x-python","patch_set":8,"id":"5faad753_9ba15149","line":16,"updated":"2019-09-18 10:07:24.000000000","message":"add a blank line","commit_id":"59809d2955d47735e3034c89fa8f3156423d73eb"}],"tacker/objects/vnf_package.py":[{"author":{"_account_id":26588,"name":"Hiroyuki Jo","email":"joxyuki@gmail.com","username":"joxyuki"},"change_message_id":"8c0c751ea8e82fb73708a6c0ebf5dccaf2a0885d","unresolved":false,"context_lines":[{"line_number":155,"context_line":"    VERSION \u003d \u00271.0\u0027"},{"line_number":156,"context_line":""},{"line_number":157,"context_line":"    fields \u003d {"},{"line_number":158,"context_line":"        \u0027id\u0027: fields.UUIDField(nullable\u003dFalse),"},{"line_number":159,"context_line":"        \u0027onboarding_state\u0027: fields.StringField(),"},{"line_number":160,"context_line":"        \u0027operational_state\u0027: fields.StringField(),"},{"line_number":161,"context_line":"        \u0027usage_state\u0027: fields.StringField(),"}],"source_content_type":"text/x-python","patch_set":2,"id":"7faddb67_9ee61516","line":158,"range":{"start_line":158,"start_character":31,"end_line":158,"end_character":45},"updated":"2019-09-04 04:03:08.000000000","message":"Can this be omitted?  This is not consistent as others are omitted.","commit_id":"460e33dedc896c7f98289435a43a9f00d5c2ab31"},{"author":{"_account_id":26588,"name":"Hiroyuki Jo","email":"joxyuki@gmail.com","username":"joxyuki"},"change_message_id":"8c0c751ea8e82fb73708a6c0ebf5dccaf2a0885d","unresolved":false,"context_lines":[{"line_number":164,"context_line":"        \u0027algorithm\u0027: fields.StringField(nullable\u003dTrue),"},{"line_number":165,"context_line":"        \u0027hash\u0027: fields.StringField(nullable\u003dTrue),"},{"line_number":166,"context_line":"        \u0027location_glance_store\u0027: fields.StringField(nullable\u003dTrue),"},{"line_number":167,"context_line":"        \u0027software_images\u0027: fields.ObjectField("},{"line_number":168,"context_line":"            \u0027VnfSoftwareImagesList\u0027),"},{"line_number":169,"context_line":"        \u0027artifacts\u0027: fields.ObjectField("},{"line_number":170,"context_line":"            \u0027VnfArtifactsList\u0027),"},{"line_number":171,"context_line":"    }"},{"line_number":172,"context_line":""},{"line_number":173,"context_line":"    @staticmethod"}],"source_content_type":"text/x-python","patch_set":2,"id":"7faddb67_3ea4c1b8","line":170,"range":{"start_line":167,"start_character":7,"end_line":170,"end_character":32},"updated":"2019-09-04 04:03:08.000000000","message":"These fields are not exist in DB schema. Is this correct to include them here?","commit_id":"460e33dedc896c7f98289435a43a9f00d5c2ab31"},{"author":{"_account_id":18955,"name":"dharmendra","email":"dharmendra.kushwaha@gmail.com","username":"dharmendra"},"change_message_id":"9017bbecf8e840d0c9631ec0e5aaab549d7ae4dc","unresolved":false,"context_lines":[{"line_number":49,"context_line":"                    models.VnfPackageUserData.__table__.insert(None),"},{"line_number":50,"context_line":"                    new_entries)"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"            return user_data"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":""},{"line_number":55,"context_line":"@db_api.context_manager.reader"}],"source_content_type":"text/x-python","patch_set":8,"id":"3fa7e38b_5cfff366","line":52,"range":{"start_line":52,"start_character":19,"end_line":52,"end_character":28},"updated":"2019-09-18 10:07:24.000000000","message":"As there no any updation on user_data, so no needs to return the same.","commit_id":"59809d2955d47735e3034c89fa8f3156423d73eb"},{"author":{"_account_id":18955,"name":"dharmendra","email":"dharmendra.kushwaha@gmail.com","username":"dharmendra"},"change_message_id":"9017bbecf8e840d0c9631ec0e5aaab549d7ae4dc","unresolved":false,"context_lines":[{"line_number":82,"context_line":"    if user_data:"},{"line_number":83,"context_line":"        _add_user_defined_data(context, vnf_package.id, user_data)"},{"line_number":84,"context_line":"        context.session.expire(vnf_package, [\u0027_metadata\u0027])"},{"line_number":85,"context_line":"        vnf_package._metadata"},{"line_number":86,"context_line":""},{"line_number":87,"context_line":"    return vnf_package"},{"line_number":88,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"3fa7e38b_dc7523fc","line":85,"range":{"start_line":85,"start_character":8,"end_line":85,"end_character":29},"updated":"2019-09-18 10:07:24.000000000","message":"Seems no operation, Does this line has any significance here?","commit_id":"59809d2955d47735e3034c89fa8f3156423d73eb"},{"author":{"_account_id":18955,"name":"dharmendra","email":"dharmendra.kushwaha@gmail.com","username":"dharmendra"},"change_message_id":"856bd4900bfb96a0b3be79388a7954ab4c4cb45f","unresolved":false,"context_lines":[{"line_number":82,"context_line":"    if user_data:"},{"line_number":83,"context_line":"        _add_user_defined_data(context, vnf_package.id, user_data)"},{"line_number":84,"context_line":"        context.session.expire(vnf_package, [\u0027_metadata\u0027])"},{"line_number":85,"context_line":"        vnf_package._metadata"},{"line_number":86,"context_line":""},{"line_number":87,"context_line":"    return vnf_package"},{"line_number":88,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"3fa7e38b_443375ac","line":85,"range":{"start_line":85,"start_character":8,"end_line":85,"end_character":29},"in_reply_to":"3fa7e38b_435139d8","updated":"2019-09-19 05:15:54.000000000","message":"ok","commit_id":"59809d2955d47735e3034c89fa8f3156423d73eb"},{"author":{"_account_id":26463,"name":"Niraj Singh","email":"niraj.singh@nttdata.com","username":"nirajsingh"},"change_message_id":"4d70184c2d192c3d4c0a8e7044f58882facf4c5c","unresolved":false,"context_lines":[{"line_number":82,"context_line":"    if user_data:"},{"line_number":83,"context_line":"        _add_user_defined_data(context, vnf_package.id, user_data)"},{"line_number":84,"context_line":"        context.session.expire(vnf_package, [\u0027_metadata\u0027])"},{"line_number":85,"context_line":"        vnf_package._metadata"},{"line_number":86,"context_line":""},{"line_number":87,"context_line":"    return vnf_package"},{"line_number":88,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"3fa7e38b_435139d8","line":85,"range":{"start_line":85,"start_character":8,"end_line":85,"end_character":29},"in_reply_to":"3fa7e38b_dc7523fc","updated":"2019-09-18 14:34:44.000000000","message":"Here we are expiring the _metadata of vnf_package in current session, because it is changed and the vnf_package do not have latest data.\nAnd by calling \"vnf_package._metadata\" the new data is loading again from db.","commit_id":"59809d2955d47735e3034c89fa8f3156423d73eb"}],"tacker/objects/vnf_package_vnfd.py":[{"author":{"_account_id":26588,"name":"Hiroyuki Jo","email":"joxyuki@gmail.com","username":"joxyuki"},"change_message_id":"8c0c751ea8e82fb73708a6c0ebf5dccaf2a0885d","unresolved":false,"context_lines":[{"line_number":32,"context_line":""},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"@base.TackerObjectRegistry.register"},{"line_number":35,"context_line":"class VnfPackageVnfd(base.TackerObject):"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"    # Version 1.0: Initial version"},{"line_number":38,"context_line":"    VERSION \u003d \u00271.0\u0027"}],"source_content_type":"text/x-python","patch_set":2,"id":"7faddb67_7e95593c","line":35,"range":{"start_line":35,"start_character":6,"end_line":35,"end_character":20},"updated":"2019-09-04 04:03:08.000000000","message":"Does\u0027t this class need to inherit base.TackerPersistendObject?","commit_id":"460e33dedc896c7f98289435a43a9f00d5c2ab31"},{"author":{"_account_id":26588,"name":"Hiroyuki Jo","email":"joxyuki@gmail.com","username":"joxyuki"},"change_message_id":"8c0c751ea8e82fb73708a6c0ebf5dccaf2a0885d","unresolved":false,"context_lines":[{"line_number":37,"context_line":"    # Version 1.0: Initial version"},{"line_number":38,"context_line":"    VERSION \u003d \u00271.0\u0027"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"    fields \u003d {"},{"line_number":41,"context_line":"        \u0027id\u0027: fields.UUIDField(),"},{"line_number":42,"context_line":"        \u0027package_uuid\u0027: fields.UUIDField(),"},{"line_number":43,"context_line":"        \u0027vnf_provider\u0027: fields.StringField(),"}],"source_content_type":"text/x-python","patch_set":2,"id":"7faddb67_5e73bd4e","line":40,"range":{"start_line":40,"start_character":4,"end_line":40,"end_character":10},"updated":"2019-09-04 04:03:08.000000000","message":"mssing vnfd_id.","commit_id":"460e33dedc896c7f98289435a43a9f00d5c2ab31"},{"author":{"_account_id":26588,"name":"Hiroyuki Jo","email":"joxyuki@gmail.com","username":"joxyuki"},"change_message_id":"8c0c751ea8e82fb73708a6c0ebf5dccaf2a0885d","unresolved":false,"context_lines":[{"line_number":38,"context_line":"    VERSION \u003d \u00271.0\u0027"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"    fields \u003d {"},{"line_number":41,"context_line":"        \u0027id\u0027: fields.UUIDField(),"},{"line_number":42,"context_line":"        \u0027package_uuid\u0027: fields.UUIDField(),"},{"line_number":43,"context_line":"        \u0027vnf_provider\u0027: fields.StringField(),"},{"line_number":44,"context_line":"        \u0027vnf_product_name\u0027: fields.StringField(),"}],"source_content_type":"text/x-python","patch_set":2,"id":"7faddb67_be78b12a","line":41,"range":{"start_line":41,"start_character":14,"end_line":41,"end_character":33},"updated":"2019-09-04 04:03:08.000000000","message":"According to the spec, this should be integer.","commit_id":"460e33dedc896c7f98289435a43a9f00d5c2ab31"},{"author":{"_account_id":26588,"name":"Hiroyuki Jo","email":"joxyuki@gmail.com","username":"joxyuki"},"change_message_id":"f9b43906662112ce59267c3ef3acf529ea06bb3b","unresolved":false,"context_lines":[{"line_number":38,"context_line":"    VERSION \u003d \u00271.0\u0027"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"    fields \u003d {"},{"line_number":41,"context_line":"        \u0027id\u0027: fields.UUIDField(),"},{"line_number":42,"context_line":"        \u0027package_uuid\u0027: fields.UUIDField(),"},{"line_number":43,"context_line":"        \u0027vnf_provider\u0027: fields.StringField(),"},{"line_number":44,"context_line":"        \u0027vnf_product_name\u0027: fields.StringField(),"}],"source_content_type":"text/x-python","patch_set":2,"id":"5faad753_b174c469","line":41,"range":{"start_line":41,"start_character":14,"end_line":41,"end_character":33},"in_reply_to":"7faddb67_be78b12a","updated":"2019-09-11 07:39:07.000000000","message":"Sorry, please ignore this comment. I think UUID is better here.","commit_id":"460e33dedc896c7f98289435a43a9f00d5c2ab31"}],"tacker/objects/vnf_software_image.py":[{"author":{"_account_id":18955,"name":"dharmendra","email":"dharmendra.kushwaha@gmail.com","username":"dharmendra"},"change_message_id":"9017bbecf8e840d0c9631ec0e5aaab549d7ae4dc","unresolved":false,"context_lines":[{"line_number":58,"context_line":"    if metadata:"},{"line_number":59,"context_line":"        _metadata_add_to_db(context, vnf_sw_image.id, metadata)"},{"line_number":60,"context_line":"        context.session.expire(vnf_sw_image, [\u0027_metadata\u0027])"},{"line_number":61,"context_line":"        vnf_sw_image._metadata"},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"    return vnf_sw_image"},{"line_number":64,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"3fa7e38b_62d796ef","line":61,"range":{"start_line":61,"start_character":8,"end_line":61,"end_character":30},"updated":"2019-09-18 10:07:24.000000000","message":"is this meaningful?","commit_id":"59809d2955d47735e3034c89fa8f3156423d73eb"}],"tacker/objects/vnf_software_images.py":[{"author":{"_account_id":26588,"name":"Hiroyuki Jo","email":"joxyuki@gmail.com","username":"joxyuki"},"change_message_id":"8c0c751ea8e82fb73708a6c0ebf5dccaf2a0885d","unresolved":false,"context_lines":[{"line_number":34,"context_line":""},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"@base.TackerObjectRegistry.register"},{"line_number":37,"context_line":"class VnfSoftwareImages(base.TackerObject):"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"    # Version 1.0: Initial version"},{"line_number":40,"context_line":"    VERSION \u003d \u00271.0\u0027"}],"source_content_type":"text/x-python","patch_set":2,"id":"7faddb67_1e8f8523","line":37,"range":{"start_line":37,"start_character":6,"end_line":37,"end_character":23},"updated":"2019-09-04 04:03:08.000000000","message":"Does\u0027t this class need to inherit base.TackerPersistendObject?","commit_id":"460e33dedc896c7f98289435a43a9f00d5c2ab31"}],"tox.ini":[{"author":{"_account_id":26588,"name":"Hiroyuki Jo","email":"joxyuki@gmail.com","username":"joxyuki"},"change_message_id":"8c0c751ea8e82fb73708a6c0ebf5dccaf2a0885d","unresolved":false,"context_lines":[{"line_number":88,"context_line":"[flake8]"},{"line_number":89,"context_line":"# E128 continuation line under-indented for visual indent"},{"line_number":90,"context_line":"# N320 log messages does not translate"},{"line_number":91,"context_line":"ignore \u003d E128,N320,H404,H405"},{"line_number":92,"context_line":"show-source \u003d true"},{"line_number":93,"context_line":"builtins \u003d _"},{"line_number":94,"context_line":"exclude \u003d .venv,.git,.tox,dist,doc,*lib/python*,*egg,build,tools,.ropeproject"}],"source_content_type":"text/x-properties","patch_set":2,"id":"7faddb67_d0afaddd","line":91,"range":{"start_line":91,"start_character":19,"end_line":91,"end_character":28},"updated":"2019-09-04 04:03:08.000000000","message":"Could you let me know why this change is introduced?","commit_id":"460e33dedc896c7f98289435a43a9f00d5c2ab31"}]}
