This is a bug fix release including many fixes and documentation updates. There are no new features or backward incompatible changes.
Bugfixes
Most important
- Fix exception handling for HTTP POST requests #2331
The improper handling of a possible exception caused the server to hang and not respond to the new requests. - Autocompletion for the login form #2276
The login form will be autocompleted if the credentials are saved by the browser. - fix backslash in user name #2332
LDAP user names containing a backslash caused exception at the server. - Skip lists should not be applied to the CTU pre-analysis step #2299
To collect the required information for the CTU and statistics based analysis no source
files are skipped from the compilation database at the pre-analysis step. - api modeling checkers should be enabled in all profiles #2305
- Increase the severity of some checker that indicate Undefined Behaviour #2370
- Removing
alpha.security.MallocOverflowfrom the sensitive profile throws too many false positives #2366
compiler include path related fixes
- Keep GCC
include-fixeddirs in include paths #2272
Theinclude-fixedinclude paths by gcc might be required for the analysis, but that is
project dependent a new--keep-gcc-include-fixedflag is introduced so the projects can keep or remove
the include paths for the analysis. - Additional
-nostdinc[++]#2344,-stdlib#2303 compilation flags are considered at the implicit compiler include path detection, because they affect the list of the include paths. - Clang searches for builtin includes relative to the binary #2302
Clang builtin include paths were added by an--isystemflag at a fixed place if the include files were in the package, standard clang installation should not be affected by this change.
compilation command logging related fixes
- Fix ld_logger crash #2309
A crash during logging prevented to collect the compilation commands. - Give absolute path in the
CC_GCC_LOGGER_LIKEenvironment variable #2315
If there are compiler wrapper scripts named the same way as the original compiler (gcc/g++) logging the original compiler was hard because the difference was only in the path of the executable. With this change the logging the original compiler execution can be done too.
Analyzer
- Fix Z3 refutation detection #2231
- return 0 in case no analysis is needed #2255
- Crash in splitting output of "clang -### ..." #2300
- Plist files should contain absolute paths #2360
- import get_logger in clang_options.py #2296
- CodeChecker disables apiModeling by default #2289
- Introduce clang version dependent options #2287
- fix env forwarding for the subprocess in ctu autodetect #2284
- Fix a typo on setup_process_timeout call #2281
- -fstack-reuse is not supported by clang #2280
- Determine language based on compiler name #2277
- Remove skip list handler from common module #2274
- remove argument handling class from common module #2254
- move report parsing related code to the parse cmd #2252
- fix context free report hash generation doc #2251
- refactor suppress file handler #2250
- Fix LOG.debug #2248
- move proc timeout functions and tests to analyzer #2246
- move get_binary_in_path to analyzer module #2245
- Add tests for cmdline #2283
Web
- Store analyzer version instead of CodeChecker version #2373
- Upgrade JQuery to 3.4.1 #2345
- Fix double scroll bar on the GUI #2334
- Extend the help message of "CodeChecker cmd del" command #2325
- indentation of the call graph is not always correct #2320
- Make placeholder help for source components more descriptive #2310
- "loading" label for unauthorized users #2307
- Fix local session creation #2301
- Fix comment update #2282
- Fix pg8000 test command #2275
- Revise how events are indented in a bug report #2269
- Web GUI doesn't honor new lines for comments #2259
- move profiler from common to server #2247
- Impossible to delete run in the web GUI #2234
- Fix reading worker_processes config value #2227
- Fix source code comment regex #2356
Other
- Description of incremental analysis using skipfile #2381
- Remove whitespace characters at cmd results #2362
- Buggy 'CodeChecker parse --print-steps' filename outputs when a report is ranging across TUs. #2358
- Format main README.md #2355
- Fix daily script #2316
- package_layout.json "ctu_func_map_cmd" is not considered #2330
- Update documentation #2323
- ld_logger improvement #2317
- gcc compiler flags against Spectre unknown by clang #2304
- match for multiple digit clang versions in tests #2298
- Update travis ci base image to bionic #2291
- replace StackAddressEscape checker in analyzer tests #2288
- Omit extra newlines while logging build commands #2286
- Add standalone package target #2273
- remove unused db version information #2270
- create reports and project for the update test #2266
- enable build matrix for travis #2261
- tu_collector tests can be run independently #2253
- update travis to clang8 #2244
- Exception on regex characters in checker name #2241
- Fix Clang version regex in tests #2239
- bump up version to v6.10.1 #2225
API
- Fix getDiffResultsHash API function #2265
Credits
Big thanks to everyone who helped us creating this release: @gwangmu, @irishrover, @zingo