Uploaded image for project: 'Data Management'
  1. Data Management
  2. DM-29996

Run code checker on lsst_distrib C++ code

    XMLWordPrintable

    Details

    • Type: Story
    • Status: In Progress
    • Resolution: Unresolved
    • Fix Version/s: None
    • Component/s: lsst_distrib
    • Labels:
      None

      Description

      Previously bear was used to create a compile database for code analysis.

      CodeChecker is a better alternative is it provided creation of a compile database from any build command (rebuild, scons) and allows to run clang-tidy and the clang static analyzer on the compile database and create a report web page.
      https://github.com/Ericsson/codechecker

        Attachments

          Issue Links

            Activity

            Hide
            wittgen Matthias Wittgen added a comment -

            Attached the code checker report on a lsst_distrib build.

            Show
            wittgen Matthias Wittgen added a comment - Attached the code checker report on a lsst_distrib build.
            Hide
            yusra Yusra AlSayyad added a comment -

            Matthias, can we post this report somewhere and call this ticket done?

            Show
            yusra Yusra AlSayyad added a comment - Matthias, can we post this report somewhere and call this ticket done?
            Hide
            wittgen Matthias Wittgen added a comment -

            What would be a good place to post a report?

            Show
            wittgen Matthias Wittgen added a comment - What would be a good place to post a report?
            Hide
            wittgen Matthias Wittgen added a comment -

            Ideally, clang and code checker would be added to the conda stack.
            The code checking could run occasionally in some github action or jenkins
            and the result written to a database back and web reports created.

            Show
            wittgen Matthias Wittgen added a comment - Ideally, clang and code checker would be added to the conda stack. The code checking could run occasionally in some github action or jenkins and the result written to a database back and web reports created.
            Hide
            wittgen Matthias Wittgen added a comment -

            CodeChecker is now available on PyPi which makes conversion to conda much simpler. The PyPi requirements are quite outdated but when relaxing them it can be installed with pip in the lsst conda stack. To wrap this up: create a feedstock for CodeChecker and document how to use this with lsstsw and scons. This depends on DM-31564, sconsUtils should not override environment variables used by CodeChecker. Currently in CodeChecker v6.16 html report generation is broken. Will be fixed in version v6.17 released sometime in September.

            Show
            wittgen Matthias Wittgen added a comment - CodeChecker is now available on PyPi which makes conversion to conda much simpler. The PyPi requirements are quite outdated but when relaxing them it can be installed with pip in the lsst conda stack. To wrap this up: create a feedstock for CodeChecker and document how to use this with lsstsw and scons. This depends on DM-31564 , sconsUtils should not override environment variables used by CodeChecker. Currently in CodeChecker v6.16 html report generation is broken. Will be fixed in version v6.17 released sometime in September.
            Hide
            tjenness Tim Jenness added a comment -

            This is only looking at C++ code then?

            Show
            tjenness Tim Jenness added a comment - This is only looking at C++ code then?
            Hide
            wittgen Matthias Wittgen added a comment -

            Yes

            Show
            wittgen Matthias Wittgen added a comment - Yes
            Hide
            wittgen Matthias Wittgen added a comment -

            CodeChecker is available now in conda-forge, but the html reporting is broken in the pypi package used for the feedstock. This will be fixed in 6.18.1

            Show
            wittgen Matthias Wittgen added a comment - CodeChecker is available now in conda-forge, but the html reporting is broken in the pypi package used for the feedstock. This will be fixed in 6.18.1

              People

              Assignee:
              wittgen Matthias Wittgen
              Reporter:
              wittgen Matthias Wittgen
              Watchers:
              Jim Bosch, John Parejko, Matthias Wittgen, Russell Owen, Tim Jenness, Yusra AlSayyad
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

                Dates

                Created:
                Updated:

                  Jenkins

                  No builds found.