Re: clang-tidy and static code analysis

2018-09-14 Thread kellen sunderland
Small update: We've added clang tidy with mostly permissive rules. Feel free to have a look at the output of the build task to see if there's some code that could be cleaned up. Example here: http://jenkins.mxnet-ci.amazon-ml.com/blue/rest/organizations/jenkins/pipelines/incubator-mxnet/branches/

Re: clang-tidy and static code analysis

2018-08-27 Thread kellen sunderland
Great suggestion Philip, and thanks for the reference. I've run a few sanitizers locally but didn't see any output that concerned me. Absolutely on my todo list to get them integrated into CI (unless someone beats me to it). On Sun, Aug 26, 2018 at 1:54 AM Marco de Abreu wrote: > Great idea, th

Re: clang-tidy and static code analysis

2018-08-25 Thread Marco de Abreu
Great idea, thanks a lot Kellen. I had a look at the results and I really like that they are clearly actionable and reveal issues that somebody wouldn't have caught on the first sight. My personal favorite is the branch anomaly detection which finds execution paths that would result in a function

Re: clang-tidy and static code analysis

2018-08-25 Thread Philip Cho
+1 as well. As a related idea, let's also consider adding sanitizer tests, which detects leaks and memory errors at runtime. Overhead is a lot lower than other methods such as valgrind. For an example, see the sanitizer tests in XGBoost: https://github.com/dmlc/xgboost/pull/3557 https://github.com

Re: clang-tidy and static code analysis

2018-08-25 Thread Hagay Lupesko
I really like this proposal. It will help improve the quality of MXNet native code, and maintain a uniform high bar. An extra 5 mins of build time seems reasonable. +1 On Sat, Aug 25, 2018, 07:02 kellen sunderland wrote: > Hello all, > > Inspired by Vanadana, cclaus and the project members who

clang-tidy and static code analysis

2018-08-25 Thread kellen sunderland
Hello all, Inspired by Vanadana, cclaus and the project members who setup the very solid linting tools already in place for MXNet, I'm propose we enable clang-tidy-6.0 in our CI (PR here: https://github.com/apache/incubator-mxnet/pull/12282). clang-tidy is getting to be quite a high-quality, free