Details
-
Task
-
Resolution: Fixed
-
P1: Critical
-
None
-
None
-
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
- is blocked by
-
QTBUG-129763 qapduutils.cpp fails to compile on mingw developer build with -force-asserts
- Closed
- relates to
-
COIN-1181 Configure Qt with "-force-asserts" for some configurations
- Closed