Summary:
Two fixes:
1. if cpplint is not present on the system, don't return a confusing error in the linter
2. Add include_alpha, which means our includes should be sorted lexicographically
Test Plan: Tried unsorting our includes, lint complained
Reviewers: rven, ljin, yhchiang, sdong
Reviewed By: sdong
Subscribers: dhruba, leveldb
Differential Revision: https://reviews.facebook.net/D28845
Summary:
cpplint.py only recognize `#ifdef HEADER_GUARD` as header guard.
This patch enables the check for `#pragma once`.
Test Plan: New arc lint exclude the false alarm for `#pragma once`.
Reviewers: dhruba, sdong, igor, haobo
CC: leveldb
Differential Revision: https://reviews.facebook.net/D16227
Summary:
Previous our new `arc lint` has two annoying bugs:
* Keeping sending false alarm that we'd put c++ system files first -- even though we've already done that.
- this problem is caused by our linter, which doesn't give the underlying cpplint.py right file path (it gives "-" as file name), making cpplint.py work incorrectly.
* Only works in rocksdb's root dir; Otherwise it'll throw exception saying "cannot find cpplint.py".
I copied open source ArcanistCpplintLinter and modifiy it for our use.
Test Plan: Ran arc lint and made sure the above-mentioned problem won't occur.
Reviewers: haobo, sdong, igor, ljin, yhchiang, dhruba
CC: leveldb
Differential Revision: https://reviews.facebook.net/D16137