V0.9.7
We are pleased to announce the SonarQube C++ Community Plugin version 0.9.7.
See lists below for features added and bugs fixed in this release.
SonarQube compability
- tested and released for SonarQube 5.6.x, 6.0, 6.1, 6.2
see also SonarQube compatibility matrix - Installation Instructions
- Upgrade Instructions
Enhancements
- SQ 5.6 API support: #926, #828, #988
- use latest highlighting API: #918, #919
forceZeroCoverage
: better detection of executable lines: #1014- improved CPD algorithm with additional configuration settings
sonar.cxx.cpd.ignoreLiterals
andsonar.cxx.cpd.ignoreIdentifiers
: #941, #953 - remove detailed mode from test metrics (no more supported with SQ 5.6 API:
sonar.cxx.xunit.provideDetails
): #906, #911 - remove computation of package/file tangle metrics (no more supported with SQ 5.6 API): #364
- Improved report handling: there is a tolerant and a strict mode now. In tolerant mode analysis continue in case of errors in a report file. In strict mode an error in a report file will stop the analysis (
sonar.cxx.errorRecoveryEnabled
): #842, #959, #758, #985, #972, #971 - CppCheck 1.75, 1.76, 1.77 support: #913, #963, #966, #970, #1020, #1011
- improve C99 designated initializers: #925, #961
- support for Visual Studio 64-bit integer-suffix: #904
- support for Visual Studio
throw(...)
exception specification: #892 - improved preprocessor number decoding #967
- support of VS2017 RC log file parsing #997
- improved commented code check, supports also
//@
and/*@
: #992 - remove indentation check: #873
- PC-Lint: support of
MISRA C++ 2008
andMISRA C++ Rule
messages: #917 - improved AppVeyor MAVEN path handling: #950
- run integration tests with latest SQ versions: #1013, #1012, #1002, #998, #977, #964, #942, #935, #934, #959
Bugfixes
- coverage issues with SQ6.2 #999
- Regression in org.sonar.cxx.visitors.AbstractCxxPublicApiVisitor #980
- typedef enum not supported by public API visitor #974
- cpd visitor: IllegalArgumentException: 208 is not a valid line offset for pointer #952
- C++11 preprocessor syntax not supported #951
- error handling raw string literals #944
- violationsCount is always "0" #939
- Travis build failing #932
- Problem with alias declarations inside template class #928
- typedef union not supported by public API visitor #921
- figure out what to do with forceZeroCoverage feature that does not work anymore in batch side #909
- sonar-cxx 0.9.6 : compatibility issue with google collection ? #898
- Issues with undocumented API detetction #890
- API Documentation on template function #886
- SwitchLastCaseIsDefault rule regression for fallthrough before default case #884
- DuplicatedIncludeCheck not working in V0.9.6 #879
- CycleBetweenPackagesCheck not working in V0.9.6 #878
- MethodNameCheck: ctor and dtor of class should not be checked #800
- Indentation within namespace blocks (again) #689
- The token column will get wrong when include file has macro #1003
- Extract this magic number 'nullptr' into a constant, variable declaration or an enum. #986
- typename not always parsed #989
- API documentation on template function in template class #1000
- Coverage fails with wrong number of lines #842
- workaround for 'forceZeroCoverage' #1007
- MethodNameCheck: ctor and dtor of class should not be checked #984
- improve public API handling #976
- improve public API typedef handling #969
- fix SwitchLastCaseIsDefault #968
- improve preprocessor number decoding #967
- improve C99 designated initializers #961
- replacing text macros (C++11 syntax) #960
- Alias declaration in function is not public API #949
- Refactor/highlighting #945
- increment violationsCount #940
- TooManyStatementsPerLineCheck: remove redundant expression #938
- Remove redundant expression #937
- Fix ^= (BW_XOR_ASSIGN) #1026
- support nested template definitions #1029
- support nested names in CLI attributes #1037
- add Cppcheck rules which seems to be not part of errlist #1045
- improve syntax error warnings in LOG file #1047
- fix Visual Studio coverage #1048
- handle CxxUnitTestResultsImportSensor exceptions #1052, #1050
- add XPath check again #1033
Know Issues
For an up to date list of known issues see the issue tracker.
- V0.9.7 is not compatible with Java 9
- Starting with SQ 6.2 there are some new metrics and some are no more available. Please have a look to the SonarQube release notes.
Thanks ....
go to all contributors (in alphabetical order):
@Bertk
@dkt01
@guwirth
@jmecosta
@wichtounet
... and all people which were active on the issue tracker!