Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Fix return type for get_maxpid().
[simgrid.git] / sonar-project.properties
index 425c6e2..6904e01 100644 (file)
@@ -1,5 +1,5 @@
 # This file is used to scan the project for issues automatically 
-# Browse the result here: https://sonarcloud.io/dashboard/?id=simgrid
+# Browse the result here: https://sonarcloud.io/organizations/simgrid/projects?sort=-size
 
 sonar.organization=simgrid
 sonar.projectKey=simgrid_simgrid
@@ -14,7 +14,7 @@ sonar.sources=src,examples,include,teshsuite
 
 
 # Disable some rules on some files
-sonar.issue.ignore.multicriteria=j1,j2,j3,j4,j5,jni1,jni2,c1,c2a,c2b,c3,c4a,c4b,c5a,c5b,c6a,c6b,c7,c8a,c8b,c9,c10,f1,p1,s1,s2,s3,s4,s5
+sonar.issue.ignore.multicriteria=j1,j2,j3,j4,j5,jni1,jni2,c1,c2a,c2b,c3,c4,c5a,c5b,c6a,c6b,c7,c8a,c8b,c9,c10a,c10b,c10c,cex1a,cex1b,cex2a,cex2b,cex3,cex4,f1,p1,s1,s2,s3,s4,s5
 
 # The Object.finalize() method should not be overridden
 # But we need to clean the native memory with JNI
@@ -69,12 +69,10 @@ sonar.issue.ignore.multicriteria.c2b.resourceKey=**/*
 sonar.issue.ignore.multicriteria.c3.ruleKey=c:PPMacroName
 sonar.issue.ignore.multicriteria.c3.resourceKey=include/smpi/smpi_extended_traces.h
 
-# Declarations should be placed in a namespace
-# But examples are intended to remain small and simple
-sonar.issue.ignore.multicriteria.c4a.ruleKey=cpp:GlobalNamespaceMembers 
-sonar.issue.ignore.multicriteria.c4a.resourceKey=examples/**/*.cpp
-sonar.issue.ignore.multicriteria.c4b.ruleKey=cpp:GlobalNamespaceMembers 
-sonar.issue.ignore.multicriteria.c4b.resourceKey=examples/**/*.hpp
+# Concise syntax should be used for concatenatable namespaces
+# This is C++17, and we still support C++14
+sonar.issue.ignore.multicriteria.c4.ruleKey=cpp:S5812
+sonar.issue.ignore.multicriteria.c4.resourceKey=**/*
 
 # Replace alternative operator "not" with "!"
 # I like it better, so please leave me alone
@@ -110,8 +108,34 @@ sonar.issue.ignore.multicriteria.c9.resourceKey=**/*
 
 # Standard outputs should not be used directly to log anything
 # Irrelevant for parsing examples
-sonar.issue.ignore.multicriteria.c10.ruleKey=cpp:S106
-sonar.issue.ignore.multicriteria.c10.resourceKey=teshsuite/s4u/evaluate-*-time/*.cpp,teshsuite/s4u/is-router/*.cpp,teshsuite/simdag/flatifier/*.cpp
+sonar.issue.ignore.multicriteria.c10a.ruleKey=cpp:S106
+sonar.issue.ignore.multicriteria.c10a.resourceKey=teshsuite/s4u/evaluate-*-time/*.cpp
+sonar.issue.ignore.multicriteria.c10b.ruleKey=cpp:S106
+sonar.issue.ignore.multicriteria.c10b.resourceKey=teshsuite/s4u/is-router/*.cpp
+sonar.issue.ignore.multicriteria.c10c.ruleKey=cpp:S106
+sonar.issue.ignore.multicriteria.c10c.resourceKey=teshsuite/simdag/flatifier/*.cpp
+
+# Declarations should be placed in a namespace
+# But examples are intended to remain small and simple
+sonar.issue.ignore.multicriteria.cex1a.ruleKey=cpp:GlobalNamespaceMembers 
+sonar.issue.ignore.multicriteria.cex1a.resourceKey=examples/**/*.cpp
+sonar.issue.ignore.multicriteria.cex1b.ruleKey=cpp:GlobalNamespaceMembers 
+sonar.issue.ignore.multicriteria.cex1b.resourceKey=examples/**/*.hpp
+
+# Functions which do not return should be declared as "noreturn"
+# But examples are intended to remain small and simple
+sonar.issue.ignore.multicriteria.cex2a.ruleKey=c:S5271
+sonar.issue.ignore.multicriteria.cex2a.resourceKey=examples/**/*.c
+sonar.issue.ignore.multicriteria.cex2b.ruleKey=cpp:S5271
+sonar.issue.ignore.multicriteria.cex2b.resourceKey=examples/**/*.cpp
+
+# Unused function parameters should be removed, but not in examples
+sonar.issue.ignore.multicriteria.cex3.ruleKey=c:S1172
+sonar.issue.ignore.multicriteria.cex3.resourceKey=examples/**/*.c
+
+# no need for constness precision in examples
+sonar.issue.ignore.multicriteria.cex4.ruleKey=c:S995
+sonar.issue.ignore.multicriteria.cex4.resourceKey=examples/**/*.c
 
 # "reinterpret_cast" should not be used
 # But we need this to interface C and Fortran
@@ -151,8 +175,9 @@ sonar.issue.ignore.multicriteria.s5.resourceKey=src/smpi/bindings/*.cpp
 #  - Collectives that we borrowed elsewhere (mpich, openMPI and other implems)
 #  - the NAS, that are included in our examples
 #  - The Catch2 library, that is included in our unit tests
+#  - The xxHash library, used by the MC
 #  - MSG along with its examples and teshsuite, and the simdag examples
-sonar.exclusions=src/include/catch.hpp,src/*_unit.c*,teshsuite/smpi/mpich3-test/**,teshsuite/smpi/isp/**,**/*_dtd.c,**/*_dtd.h,**/*yy.c,src/xbt/automaton/parserPromela.tab.*,src/smpi/colls/**/*,examples/smpi/NAS/*,examples/smpi/gemm/gemm.c,src/msg/**,include/msg/**,examples/deprecated/**,teshsuite/msg/**
+sonar.exclusions=src/include/catch.hpp,src/include/xxhash.hpp,src/*_unit.c*,teshsuite/smpi/mpich3-test/**,teshsuite/smpi/isp/**,**/*_dtd.c,**/*_dtd.h,**/*yy.c,src/xbt/automaton/parserPromela.tab.*,src/smpi/colls/**/*,examples/smpi/NAS/*,examples/smpi/gemm/gemm.c,src/msg/**,include/msg/**,examples/deprecated/**,teshsuite/msg/**
 
 # Exclude our examples from the duplication detection.
 # Examples are expected to be somehow repetitive