Commit Graph

42 Commits

Author SHA1 Message Date
w0rp 95ec9bb780
#1167 Use the make -n parsing for C++ compilers, and document the new option 2018-03-27 19:24:22 +01:00
Christian-Gibbons b586eba4a4 Handle flawfinder severity level (#1400)
* Handle flawfinder severity level
* Reverted code allowing Flawfinder to piggyback off of gcc's format handler
* Gave Flawfinder its own format handler and made requested changes.
2018-03-10 10:44:55 +00:00
Christian-Gibbons 82f8a04e18 New linter: Flawfinder (#1361)
* Flawfinder support added for C and C++

A minor modification to gcc handler was made to support flawfinder's
single-line output format that does not have a space following the
colon denoting the warning level.  gcc handler still passes its
Vader tests after this modification.

* Documentation fixes

* Revert documentation regression

* Added Flawfinder to table of contents

* Removed trailing whitespace

* Follow ALE conventions better

Added additional documentation and Vader tests
2018-02-25 14:11:04 +00:00
Jonatan Olofsson ff8d4c5286 Fix #1255: Move extra clang-check args to before user options 2018-01-02 16:09:38 +01:00
w0rp 87616c5e91 #782 - Do not set the build directory for clang-tidy for header files, which does not work 2017-07-20 14:52:24 +01:00
w0rp eab77b7072 #703 Add arguments to avoid generating plist files if no build directory is detected for clang-check 2017-07-17 10:19:08 +01:00
w0rp 3b1bc2bd13 Fix another executable callback typo 2017-07-17 00:19:33 +01:00
w0rp 23ea62d40a #711 - Make the cpplint executable configurable 2017-07-17 00:17:59 +01:00
w0rp 3352a6c9df #711 - Make the clangtidy executable configurable 2017-07-17 00:07:18 +01:00
w0rp fe70742bb9 #711 - Make the clangcheck executable configurable 2017-07-16 23:35:10 +01:00
w0rp 9e83878900 #711 - Make the gcc executables configurable 2017-07-16 22:41:15 +01:00
w0rp 58717e05a3 #711 - Make the cppcheck executables configurable 2017-07-16 22:11:43 +01:00
w0rp 54ff573174 #711 - Make the clang executables configurable 2017-07-16 21:37:10 +01:00
Wil Thomason 6ab92af181 Correctly pass options to cpplint (#728)
* Fix option passing to cpplint
2017-07-05 10:14:43 +01:00
w0rp 8b557f346c Move ale#handlers#c functions into ale#c 2017-06-25 20:34:23 +01:00
Gagbo dc647fcc7f Add clangcheck Linter to cpp (#686)
Add a clangcheck linter
2017-06-24 16:10:04 +01:00
Gagbo e98560a349 Added builddir option to clang-tidy to point to json folder (#688)
Detect compille_commands.json files for clang-tidy
2017-06-24 12:38:16 +01:00
w0rp 5e4c302b5b Fix #557 - Detect C project roots and include root directories with headers, or include directories 2017-05-31 20:01:47 +01:00
Dawid Kurek 9185a0d2e5 Add cpplint linter 2017-05-16 19:09:59 +02:00
w0rp 07b2542c0d #549 Temporarily revert shell escaping changes, just for Windows 2017-05-12 09:20:16 +01:00
w0rp 6ea00af689 #540 Fix shell escaping pretty much everywhere 2017-05-08 22:59:25 +01:00
w0rp 3573975934 Fix #410 - Use compile_commands.json files for clang-tidy, and check files on disk instead 2017-05-02 22:44:08 +01:00
w0rp eb8bd26776 #392 - Detect and use compile_commands.json for cppcheck 2017-05-02 21:18:17 +01:00
w0rp 2c7d14809d Set GCC flags appropriately for older versions 2017-04-29 20:00:42 +01:00
w0rp a03121f5b0 Break shared handlers up into their own files, and fix stylelint error handling 2017-04-24 22:27:18 +01:00
w0rp e97dada261 #427 Implement buffer variable overrides for all linter options 2017-04-16 01:24:08 +01:00
w0rp cab68cba25 Make code more consistent 2017-04-15 12:52:08 +01:00
w0rp b06b832447 #392 Report errors inside of headers, in a very basic way 2017-04-11 20:32:57 +01:00
w0rp d58a18b8ed #277 #318 Support all same-directory includes for gcc and clang 2017-03-11 16:48:49 +00:00
equal-l2 4fa52fd98a Use latest C++ standard 2017-03-01 02:42:35 +09:00
Andrea Caforio a7272466f7 Fix clang++ flag typo. 2017-02-16 18:12:41 +01:00
w0rp ed269b8831 Fix the clangtidy linter, and document everything 2017-02-11 23:45:06 +00:00
Tim van Deurzen 355608b031 Add clang-tidy linter for cpp. (#275)
* Add clang-tidy linter for cpp.

* Use stdin-wrapper to allow linting as you type.
2017-02-11 23:32:56 +00:00
w0rp ecbb276805 Replace every stdin-wrapper script with the new %t formatting support 2017-02-11 19:40:57 +00:00
tomotanakamura 2ba2aff65e Add clang to cpp linters. 2017-02-11 21:35:34 +09:00
grzebiel 9767fd8732 Added ability to reload compilation flags for c and c++ after loading plugin 2016-12-24 00:18:14 +01:00
Bjorn Neergaard f49f615ef6
Add support for dot-seperate linters, improve linter tests
This PR first and formost implements support for dot-seperate filetypes,
a very trivial change.

This closes #132

But more importantly, this PR vastly improves the test quality for
`ale#linter#Get`. It enables us to reset the state of ale's internal
linter cache, to facilitate better testing, as well as making use of
mocked linters instead of depending on linters on disk (which may
change). In addition, a dummy linter is defined to test the autoloading
behavior.

Header guards were removed from all linters as:

* A: ale won't try and load linters if they already exist in memory
* B: we can't reset state for testing if they can't be loaded again
2016-10-21 21:02:20 -05:00
ehzShelter 1e83489691 make it less verbose for c and cpp 2016-10-21 20:02:20 +06:00
ehzShelter ce3d79550d Added c++14 standard support and POSIX API compile time linker flags for avoiding annoying errors and warnings 2016-10-21 13:07:51 +06:00
Bart Libert a34fb0a6a7 Add support for cppcheck (#126)
* Add support for cppcheck

* Fix vint error in cppcheck handler

* Add vader test for CppCheck format handler
2016-10-20 12:30:45 +01:00
Bjorn Neergaard 7f0ce89d2b First pass at optimizing ale to autoload (#80)
* First pass at optimizing ale to autoload

First off, the structure/function names should be revised a bit,
but I will wait for @w0rp's input before unifying the naming style.
Second off, the docs probably need some more work, I just did some
simple find-and-replace work.

With that said, this pull brings major performance gains for ale. On my
slowest system, fully loading ale and all its code takes around 150ms.

I have moved all of ale's autoload-able code to autoload/, and in
addition, implemented lazy-loading of linters. This brings load time on
that same system down to 5ms.

The only downside of lazy loading is that `g:ale_linters` cannot be
changed at runtime; however, it also speeds up performance at runtime by
simplfying the logic greatly.

Please let me know what you think!

Closes #59

* Address Travis/Vint errors

For some reason, ale isn't running vint for me...

* Incorporate feedback, make fixes

Lazy-loading logic is much improved.

* Add header comments; remove incorrect workaround

* Remove unneeded plugin guards

* Fix lazy-loading linter logic

Set the wrong variable....

* Fix capitialization
2016-10-10 19:51:29 +01:00
Marc Delage edc5cedd8c Add cpp linter (#64)
* Add c gcc option in the doc

* Add missing tag for eslint option in the doc

* Correct typo in doc (' ' instead of '.')

* add cpp linter

* correct typo in doc

* add filetype information for c++
2016-10-08 12:42:36 +01:00