Uploaded image for project: 'Qt Quality Assurance Infrastructure'
  1. Qt Quality Assurance Infrastructure
  2. QTQAINFRA-6624

Debug builds (and testing) with asserts should exist in all platforms

    XMLWordPrintable

Details

    • Task
    • Resolution: Fixed
    • P1: Critical
    • None
    • None
    • Test configurations
    • None
    • c5ab2fe4f (dev), db32c6b6e (6.8), e2109a516 (dev)

    Description

      I was recently tipped (CC manordheim) that our CI is mostly doing release builds. This has caused bugs to slip through (QTBUG-129448) and is dangerous for leaving subtle bugs undetected as asserts are in the code for a good reason, ensuring that the code never enters indeterminate state.

      I went through the configurations in qtbase, and I see only 1 linux build (besides ASAN) being debug with tests, and only 1 on macos.

      Reasons:

      • Too many builds have explicit -release flag
      • A non developer-build is by default a release build
        • Can we change our cmake scripts to default to debug build, unless -release is provided?
      • Many of the developer-builds have explicit -release flag
      • Some platforms build -debug-and-release but they build tests only RelWithDebInfo

      Solution: The default mode for a configuration added to the CI should be debug
      if we care about CI catching bugs early...

      Doing release builds is of course needed for releasing.

      • Only the configurations that produce release binaries should be in release mode
      • They only need to be in release mode when release binaries are generated.

      Attachments

        Issue Links

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

            People

              jujokini Jukka Jokiniva
              jimis Dimitrios Apostolou
              Votes:
              1 Vote for this issue
              Watchers:
              9 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes