)]}'
{"cgcs-patch/centos/cgcs-patch.spec":[{"author":{"_account_id":28464,"name":"Eric MacDonald","display_name":"Eric","email":"eric.macdonald@windriver.com","username":"rocksolidmtce"},"change_message_id":"7b433c03784ce6674372d294afa3cfe7b6686d60","unresolved":false,"context_lines":[{"line_number":111,"context_line":"        %{buildroot}%{_sbindir}/upgrade-start-pkg-extract"},{"line_number":112,"context_line":""},{"line_number":113,"context_line":"%clean"},{"line_number":114,"context_line":"rm -rf $RPM_BUILD_ROOT "},{"line_number":115,"context_line":""},{"line_number":116,"context_line":"%package -n cgcs-patch-controller"},{"line_number":117,"context_line":"Summary: StarlingX Platform Patching"}],"source_content_type":"text/x-rpm-spec","patch_set":1,"id":"3fa7e38b_f8f5fd84","line":114,"range":{"start_line":114,"start_character":22,"end_line":114,"end_character":23},"updated":"2020-01-03 15:12:43.000000000","message":"nit: Suggest removing the only EOL space in this file.","commit_id":"cf732e4858547443482f194ac996c9b432ea46ca"},{"author":{"_account_id":28431,"name":"Don Penney","email":"dpenney@redhat.com","username":"dpenney"},"change_message_id":"cf354cd77dda4fb8027a7ef10bf8d64859fca356","unresolved":false,"context_lines":[{"line_number":111,"context_line":"        %{buildroot}%{_sbindir}/upgrade-start-pkg-extract"},{"line_number":112,"context_line":""},{"line_number":113,"context_line":"%clean"},{"line_number":114,"context_line":"rm -rf $RPM_BUILD_ROOT "},{"line_number":115,"context_line":""},{"line_number":116,"context_line":"%package -n cgcs-patch-controller"},{"line_number":117,"context_line":"Summary: StarlingX Platform Patching"}],"source_content_type":"text/x-rpm-spec","patch_set":1,"id":"3fa7e38b_5b43eb6b","line":114,"range":{"start_line":114,"start_character":22,"end_line":114,"end_character":23},"in_reply_to":"3fa7e38b_f8f5fd84","updated":"2020-01-03 20:13:23.000000000","message":"Done","commit_id":"cf732e4858547443482f194ac996c9b432ea46ca"}],"cgcs-patch/cgcs-patch/cgcs_patch/patch_agent.py":[{"author":{"_account_id":28464,"name":"Eric MacDonald","display_name":"Eric","email":"eric.macdonald@windriver.com","username":"rocksolidmtce"},"change_message_id":"7b433c03784ce6674372d294afa3cfe7b6686d60","unresolved":false,"context_lines":[{"line_number":404,"context_line":""},{"line_number":405,"context_line":"        # Ensure only platform repos are enabled for transaction"},{"line_number":406,"context_line":"        for repo in self.dnfb.repos.all():"},{"line_number":407,"context_line":"            print(repo.id)"},{"line_number":408,"context_line":"            if repo.id \u003d\u003d \u0027platform-base\u0027 or repo.id \u003d\u003d \u0027platform-updates\u0027:"},{"line_number":409,"context_line":"                repo.enable()"},{"line_number":410,"context_line":"            else:"}],"source_content_type":"text/x-python","patch_set":1,"id":"3fa7e38b_dba11b94","line":407,"range":{"start_line":407,"start_character":12,"end_line":407,"end_character":26},"updated":"2020-01-03 15:12:43.000000000","message":"You intend to leave this raw \u0027print\u0027 in ?","commit_id":"cf732e4858547443482f194ac996c9b432ea46ca"},{"author":{"_account_id":28431,"name":"Don Penney","email":"dpenney@redhat.com","username":"dpenney"},"change_message_id":"cf354cd77dda4fb8027a7ef10bf8d64859fca356","unresolved":false,"context_lines":[{"line_number":404,"context_line":""},{"line_number":405,"context_line":"        # Ensure only platform repos are enabled for transaction"},{"line_number":406,"context_line":"        for repo in self.dnfb.repos.all():"},{"line_number":407,"context_line":"            print(repo.id)"},{"line_number":408,"context_line":"            if repo.id \u003d\u003d \u0027platform-base\u0027 or repo.id \u003d\u003d \u0027platform-updates\u0027:"},{"line_number":409,"context_line":"                repo.enable()"},{"line_number":410,"context_line":"            else:"}],"source_content_type":"text/x-python","patch_set":1,"id":"3fa7e38b_3b338f14","line":407,"range":{"start_line":407,"start_character":12,"end_line":407,"end_character":26},"in_reply_to":"3fa7e38b_dba11b94","updated":"2020-01-03 20:13:23.000000000","message":"Nope. Leftover from initial DNF testing","commit_id":"cf732e4858547443482f194ac996c9b432ea46ca"},{"author":{"_account_id":28464,"name":"Eric MacDonald","display_name":"Eric","email":"eric.macdonald@windriver.com","username":"rocksolidmtce"},"change_message_id":"7b433c03784ce6674372d294afa3cfe7b6686d60","unresolved":false,"context_lines":[{"line_number":423,"context_line":"            self.dnfb.close()"},{"line_number":424,"context_line":"            self.dnfb \u003d None"},{"line_number":425,"context_line":""},{"line_number":426,"context_line":"        # TODO(dpenney): Use python APIs for makecache"},{"line_number":427,"context_line":"        try:"},{"line_number":428,"context_line":"            subprocess.check_output(dnf_makecache, stderr\u003dsubprocess.STDOUT)"},{"line_number":429,"context_line":"        except subprocess.CalledProcessError as e:"}],"source_content_type":"text/x-python","patch_set":1,"id":"3fa7e38b_3baaaf6c","line":426,"range":{"start_line":426,"start_character":15,"end_line":426,"end_character":22},"updated":"2020-01-03 15:12:43.000000000","message":"Intend to leave this in ?","commit_id":"cf732e4858547443482f194ac996c9b432ea46ca"},{"author":{"_account_id":28431,"name":"Don Penney","email":"dpenney@redhat.com","username":"dpenney"},"change_message_id":"cf354cd77dda4fb8027a7ef10bf8d64859fca356","unresolved":false,"context_lines":[{"line_number":423,"context_line":"            self.dnfb.close()"},{"line_number":424,"context_line":"            self.dnfb \u003d None"},{"line_number":425,"context_line":""},{"line_number":426,"context_line":"        # TODO(dpenney): Use python APIs for makecache"},{"line_number":427,"context_line":"        try:"},{"line_number":428,"context_line":"            subprocess.check_output(dnf_makecache, stderr\u003dsubprocess.STDOUT)"},{"line_number":429,"context_line":"        except subprocess.CalledProcessError as e:"}],"source_content_type":"text/x-python","patch_set":1,"id":"3fa7e38b_7b5fc74c","line":426,"range":{"start_line":426,"start_character":15,"end_line":426,"end_character":22},"in_reply_to":"3fa7e38b_3baaaf6c","updated":"2020-01-03 20:13:23.000000000","message":"Yes, as a possible future enhancement.","commit_id":"cf732e4858547443482f194ac996c9b432ea46ca"},{"author":{"_account_id":28464,"name":"Eric MacDonald","display_name":"Eric","email":"eric.macdonald@windriver.com","username":"rocksolidmtce"},"change_message_id":"7b433c03784ce6674372d294afa3cfe7b6686d60","unresolved":false,"context_lines":[{"line_number":440,"context_line":"        self.installed \u003d {}"},{"line_number":441,"context_line":"        self.to_install_dnf \u003d []"},{"line_number":442,"context_line":"        self.to_downgrade_dnf \u003d []"},{"line_number":443,"context_line":"        self.to_remove \u003d {}"},{"line_number":444,"context_line":"        self.to_remove_dnf \u003d []"},{"line_number":445,"context_line":"        self.missing_pkgs \u003d []"},{"line_number":446,"context_line":"        self.missing_pkgs_dnf \u003d []"}],"source_content_type":"text/x-python","patch_set":1,"id":"3fa7e38b_9bde430e","line":443,"range":{"start_line":443,"start_character":25,"end_line":443,"end_character":27},"updated":"2020-01-03 15:12:43.000000000","message":"This is defaulted to a list [] in the class object init.","commit_id":"cf732e4858547443482f194ac996c9b432ea46ca"},{"author":{"_account_id":28431,"name":"Don Penney","email":"dpenney@redhat.com","username":"dpenney"},"change_message_id":"cf354cd77dda4fb8027a7ef10bf8d64859fca356","unresolved":false,"context_lines":[{"line_number":440,"context_line":"        self.installed \u003d {}"},{"line_number":441,"context_line":"        self.to_install_dnf \u003d []"},{"line_number":442,"context_line":"        self.to_downgrade_dnf \u003d []"},{"line_number":443,"context_line":"        self.to_remove \u003d {}"},{"line_number":444,"context_line":"        self.to_remove_dnf \u003d []"},{"line_number":445,"context_line":"        self.missing_pkgs \u003d []"},{"line_number":446,"context_line":"        self.missing_pkgs_dnf \u003d []"}],"source_content_type":"text/x-python","patch_set":1,"id":"3fa7e38b_cc896370","line":443,"range":{"start_line":443,"start_character":25,"end_line":443,"end_character":27},"in_reply_to":"3fa7e38b_9bde430e","updated":"2020-01-03 20:13:23.000000000","message":"Updated","commit_id":"cf732e4858547443482f194ac996c9b432ea46ca"},{"author":{"_account_id":28464,"name":"Eric MacDonald","display_name":"Eric","email":"eric.macdonald@windriver.com","username":"rocksolidmtce"},"change_message_id":"7b433c03784ce6674372d294afa3cfe7b6686d60","unresolved":false,"context_lines":[{"line_number":621,"context_line":"            try:"},{"line_number":622,"context_line":"                transaction_rc \u003d self.resolve_dnf_transaction()"},{"line_number":623,"context_line":"            except dnf.exceptions.DepsolveError:"},{"line_number":624,"context_line":"                LOG.error(\"Failures resolving dependencies in transaction\")"},{"line_number":625,"context_line":"            except dnf.exceptions.DownloadError:"},{"line_number":626,"context_line":"                LOG.error(\"Failures resolving dependencies in transaction\")"},{"line_number":627,"context_line":""},{"line_number":628,"context_line":"            if not transaction_rc:"},{"line_number":629,"context_line":"                LOG.error(\"Failures occurred during transaction\")"}],"source_content_type":"text/x-python","patch_set":1,"id":"3fa7e38b_fb23b704","line":626,"range":{"start_line":624,"start_character":0,"end_line":626,"end_character":75},"updated":"2020-01-03 15:12:43.000000000","message":"nit: suggest these logs have a mild difference in wording so you can distinguish which exception case occurred. One is Depsolve while the other is Download.\n\nGuessing you want a python traceback on all other cases.","commit_id":"cf732e4858547443482f194ac996c9b432ea46ca"},{"author":{"_account_id":28431,"name":"Don Penney","email":"dpenney@redhat.com","username":"dpenney"},"change_message_id":"cf354cd77dda4fb8027a7ef10bf8d64859fca356","unresolved":false,"context_lines":[{"line_number":621,"context_line":"            try:"},{"line_number":622,"context_line":"                transaction_rc \u003d self.resolve_dnf_transaction()"},{"line_number":623,"context_line":"            except dnf.exceptions.DepsolveError:"},{"line_number":624,"context_line":"                LOG.error(\"Failures resolving dependencies in transaction\")"},{"line_number":625,"context_line":"            except dnf.exceptions.DownloadError:"},{"line_number":626,"context_line":"                LOG.error(\"Failures resolving dependencies in transaction\")"},{"line_number":627,"context_line":""},{"line_number":628,"context_line":"            if not transaction_rc:"},{"line_number":629,"context_line":"                LOG.error(\"Failures occurred during transaction\")"}],"source_content_type":"text/x-python","patch_set":1,"id":"3fa7e38b_6cf06ffd","line":626,"range":{"start_line":624,"start_character":0,"end_line":626,"end_character":75},"in_reply_to":"3fa7e38b_fb23b704","updated":"2020-01-03 20:13:23.000000000","message":"Updated the log","commit_id":"cf732e4858547443482f194ac996c9b432ea46ca"},{"author":{"_account_id":28464,"name":"Eric MacDonald","display_name":"Eric","email":"eric.macdonald@windriver.com","username":"rocksolidmtce"},"change_message_id":"7b433c03784ce6674372d294afa3cfe7b6686d60","unresolved":false,"context_lines":[{"line_number":629,"context_line":"                LOG.error(\"Failures occurred during transaction\")"},{"line_number":630,"context_line":"                rc \u003d False"},{"line_number":631,"context_line":"                if verbose_to_stdout:"},{"line_number":632,"context_line":"                    print(\"WARNING: Software update failed.\")"},{"line_number":633,"context_line":""},{"line_number":634,"context_line":"        elif not changed:"},{"line_number":635,"context_line":"            if verbose_to_stdout:"}],"source_content_type":"text/x-python","patch_set":1,"id":"3fa7e38b_fb689722","line":632,"range":{"start_line":632,"start_character":20,"end_line":632,"end_character":61},"updated":"2020-01-03 15:12:43.000000000","message":"not: you want this logged as well, like LOG.info below","commit_id":"cf732e4858547443482f194ac996c9b432ea46ca"},{"author":{"_account_id":28431,"name":"Don Penney","email":"dpenney@redhat.com","username":"dpenney"},"change_message_id":"cf354cd77dda4fb8027a7ef10bf8d64859fca356","unresolved":false,"context_lines":[{"line_number":629,"context_line":"                LOG.error(\"Failures occurred during transaction\")"},{"line_number":630,"context_line":"                rc \u003d False"},{"line_number":631,"context_line":"                if verbose_to_stdout:"},{"line_number":632,"context_line":"                    print(\"WARNING: Software update failed.\")"},{"line_number":633,"context_line":""},{"line_number":634,"context_line":"        elif not changed:"},{"line_number":635,"context_line":"            if verbose_to_stdout:"}],"source_content_type":"text/x-python","patch_set":1,"id":"3fa7e38b_0cd9bb82","line":632,"range":{"start_line":632,"start_character":20,"end_line":632,"end_character":61},"in_reply_to":"3fa7e38b_fb689722","updated":"2020-01-03 20:13:23.000000000","message":"The failure is being logged already just above","commit_id":"cf732e4858547443482f194ac996c9b432ea46ca"},{"author":{"_account_id":14174,"name":"Bart Wensley","email":"bartwensley@hotmail.com","username":"bartwensley"},"change_message_id":"82a230b8b9b6e8cce9b575246ad3beb04e0fd6bf","unresolved":false,"context_lines":[{"line_number":486,"context_line":"        pkggrp \u003d None"},{"line_number":487,"context_line":"        for grp in self.dnfb.comps.groups_iter():"},{"line_number":488,"context_line":"            if grp.id \u003d\u003d grp_id:"},{"line_number":489,"context_line":"                pkggrp \u003d grp"},{"line_number":490,"context_line":""},{"line_number":491,"context_line":"        if pkggrp is None:"},{"line_number":492,"context_line":"            LOG.error(\"Could not find software group: %s\", grp_id)"}],"source_content_type":"text/x-python","patch_set":3,"id":"3fa7e38b_8d60f0a5","line":489,"range":{"start_line":489,"start_character":16,"end_line":489,"end_character":28},"updated":"2020-01-10 19:07:34.000000000","message":"Break out of loop after this?","commit_id":"3df2ed2aa7391dfd533d88a60b4cfaba4d27dd9d"},{"author":{"_account_id":28431,"name":"Don Penney","email":"dpenney@redhat.com","username":"dpenney"},"change_message_id":"e821fb24d5a356e111cbd5d78afb1c1cbdb914d0","unresolved":false,"context_lines":[{"line_number":486,"context_line":"        pkggrp \u003d None"},{"line_number":487,"context_line":"        for grp in self.dnfb.comps.groups_iter():"},{"line_number":488,"context_line":"            if grp.id \u003d\u003d grp_id:"},{"line_number":489,"context_line":"                pkggrp \u003d grp"},{"line_number":490,"context_line":""},{"line_number":491,"context_line":"        if pkggrp is None:"},{"line_number":492,"context_line":"            LOG.error(\"Could not find software group: %s\", grp_id)"}],"source_content_type":"text/x-python","patch_set":3,"id":"3fa7e38b_04a84b1f","line":489,"range":{"start_line":489,"start_character":16,"end_line":489,"end_character":28},"in_reply_to":"3fa7e38b_8d60f0a5","updated":"2020-01-13 14:21:54.000000000","message":"Done","commit_id":"3df2ed2aa7391dfd533d88a60b4cfaba4d27dd9d"},{"author":{"_account_id":14174,"name":"Bart Wensley","email":"bartwensley@hotmail.com","username":"bartwensley"},"change_message_id":"82a230b8b9b6e8cce9b575246ad3beb04e0fd6bf","unresolved":false,"context_lines":[{"line_number":525,"context_line":"        transaction_rc \u003d True"},{"line_number":526,"context_line":"        for t in self.dnfb.transaction:"},{"line_number":527,"context_line":"            if t.state !\u003d libdnf.transaction.TransactionItemState_DONE:"},{"line_number":528,"context_line":"                transaction_rc \u003d False"},{"line_number":529,"context_line":""},{"line_number":530,"context_line":"        self.dnf_reset_client()"},{"line_number":531,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"3fa7e38b_4d0bd8d2","line":528,"range":{"start_line":528,"start_character":16,"end_line":528,"end_character":38},"updated":"2020-01-10 19:07:34.000000000","message":"Break out of loop after this?","commit_id":"3df2ed2aa7391dfd533d88a60b4cfaba4d27dd9d"},{"author":{"_account_id":28431,"name":"Don Penney","email":"dpenney@redhat.com","username":"dpenney"},"change_message_id":"e821fb24d5a356e111cbd5d78afb1c1cbdb914d0","unresolved":false,"context_lines":[{"line_number":525,"context_line":"        transaction_rc \u003d True"},{"line_number":526,"context_line":"        for t in self.dnfb.transaction:"},{"line_number":527,"context_line":"            if t.state !\u003d libdnf.transaction.TransactionItemState_DONE:"},{"line_number":528,"context_line":"                transaction_rc \u003d False"},{"line_number":529,"context_line":""},{"line_number":530,"context_line":"        self.dnf_reset_client()"},{"line_number":531,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"3fa7e38b_e4aacf19","line":528,"range":{"start_line":528,"start_character":16,"end_line":528,"end_character":38},"in_reply_to":"3fa7e38b_4d0bd8d2","updated":"2020-01-13 14:21:54.000000000","message":"Done","commit_id":"3df2ed2aa7391dfd533d88a60b4cfaba4d27dd9d"},{"author":{"_account_id":15435,"name":"Al Bailey","email":"albailey1974@gmail.com","username":"albailey"},"change_message_id":"f61c74465b08045654e36ba7018fcbd8fd4de12f","unresolved":false,"context_lines":[{"line_number":619,"context_line":"            for pkg in self.to_remove_dnf:"},{"line_number":620,"context_line":"                self.dnfb.package_remove(pkg)"},{"line_number":621,"context_line":"            changed \u003d True"},{"line_number":622,"context_line":""},{"line_number":623,"context_line":"        if changed and rc:"},{"line_number":624,"context_line":"            # Run the transaction set"},{"line_number":625,"context_line":"            transaction_rc \u003d False"},{"line_number":626,"context_line":"            try:"}],"source_content_type":"text/x-python","patch_set":3,"id":"3fa7e38b_7276af0e","line":623,"range":{"start_line":622,"start_character":0,"end_line":623,"end_character":26},"updated":"2020-01-10 18:29:34.000000000","message":"This compound if statement I think should be changed.\nYou are guaranteed that rc \u003d True (line 599) and it cannot change until line 635.","commit_id":"3df2ed2aa7391dfd533d88a60b4cfaba4d27dd9d"},{"author":{"_account_id":28431,"name":"Don Penney","email":"dpenney@redhat.com","username":"dpenney"},"change_message_id":"e821fb24d5a356e111cbd5d78afb1c1cbdb914d0","unresolved":false,"context_lines":[{"line_number":619,"context_line":"            for pkg in self.to_remove_dnf:"},{"line_number":620,"context_line":"                self.dnfb.package_remove(pkg)"},{"line_number":621,"context_line":"            changed \u003d True"},{"line_number":622,"context_line":""},{"line_number":623,"context_line":"        if changed and rc:"},{"line_number":624,"context_line":"            # Run the transaction set"},{"line_number":625,"context_line":"            transaction_rc \u003d False"},{"line_number":626,"context_line":"            try:"}],"source_content_type":"text/x-python","patch_set":3,"id":"3fa7e38b_24b1c792","line":623,"range":{"start_line":622,"start_character":0,"end_line":623,"end_character":26},"in_reply_to":"3fa7e38b_7276af0e","updated":"2020-01-13 14:21:54.000000000","message":"Done","commit_id":"3df2ed2aa7391dfd533d88a60b4cfaba4d27dd9d"}],"cgcs-patch/cgcs-patch/pylint.rc":[{"author":{"_account_id":14174,"name":"Bart Wensley","email":"bartwensley@hotmail.com","username":"bartwensley"},"change_message_id":"82a230b8b9b6e8cce9b575246ad3beb04e0fd6bf","unresolved":false,"context_lines":[{"line_number":236,"context_line":"# List of module names for which member attributes should not be checked"},{"line_number":237,"context_line":"# (useful for modules/projects where namespaces are manipulated during runtime"},{"line_number":238,"context_line":"# and thus existing member attributes cannot be deduced by static analysis"},{"line_number":239,"context_line":"ignored-modules\u003ddnf,libdnf"},{"line_number":240,"context_line":""},{"line_number":241,"context_line":"# List of classes names for which member attributes should not be checked"},{"line_number":242,"context_line":"# (useful for classes with attributes dynamically set)."}],"source_content_type":"application/octet-stream","patch_set":3,"id":"3fa7e38b_32c59790","line":239,"range":{"start_line":239,"start_character":16,"end_line":239,"end_character":26},"updated":"2020-01-10 19:07:34.000000000","message":"Seems we do this pretty rarely - why was this required?","commit_id":"3df2ed2aa7391dfd533d88a60b4cfaba4d27dd9d"},{"author":{"_account_id":28431,"name":"Don Penney","email":"dpenney@redhat.com","username":"dpenney"},"change_message_id":"e821fb24d5a356e111cbd5d78afb1c1cbdb914d0","unresolved":false,"context_lines":[{"line_number":236,"context_line":"# List of module names for which member attributes should not be checked"},{"line_number":237,"context_line":"# (useful for modules/projects where namespaces are manipulated during runtime"},{"line_number":238,"context_line":"# and thus existing member attributes cannot be deduced by static analysis"},{"line_number":239,"context_line":"ignored-modules\u003ddnf,libdnf"},{"line_number":240,"context_line":""},{"line_number":241,"context_line":"# List of classes names for which member attributes should not be checked"},{"line_number":242,"context_line":"# (useful for classes with attributes dynamically set)."}],"source_content_type":"application/octet-stream","patch_set":3,"id":"3fa7e38b_c4a1d33c","line":239,"range":{"start_line":239,"start_character":16,"end_line":239,"end_character":26},"in_reply_to":"3fa7e38b_32c59790","updated":"2020-01-13 14:21:54.000000000","message":"These modules are not yet published to pypi, so tox cannot install them and pylint cannot validate them.","commit_id":"3df2ed2aa7391dfd533d88a60b4cfaba4d27dd9d"}]}
