brobeson / vscode-cppcheck Goto Github PK
View Code? Open in Web Editor NEWA Visual Studio Code extension to run Cppcheck
License: MIT License
A Visual Studio Code extension to run Cppcheck
License: MIT License
v0.1.0
Add a setting for the user to control the --project
command option. Default to the compile_commands.json file the extension can find it, or no project if the extension cannot find compile_commands.json.
v0.1.0
When Cppcheck scans a file and reports errors in other files, all the diagnostics are tied to the original file instead of the files that actually have issues.
The diagnostics need to refer to the correct file. Then the problems panel and editor squiggles will be correct.
Figure out why the unit tests stopped working when I cleaned up my branches, and fix them.
v0.1.0
Write a set of tasks that emulate the GH workflows.
v0.1.0
The current behavior requires the developer to save a file to run Cppcheck. Add functionality to run Cppcheck when the developer opens the file, too.
v0.1.0
Ensure the extension runs on C files. I've only checked it on C++ files.
v0.1.0
The extension quietly does not add diagnostics. The problem is that it fails to parse the JSON output. Here is example bad output:
"[{\"file\":\"/home/brendan/repositories/tracking-analyzer/tracking-analyzer/tracking-analyzer-gui/application.h\",\"line\":4,\"column\":0,\"severity\":\"information\",\"message\":\"Include file: \"tracking-analyzer/dataset.h\" not found.\",\"id\":\"missingInclude\"},\n{\"file\":\"/home/brendan/repositories/tracking-analyzer/tracking-analyzer/tracking-analyzer-gui/application.h\",\"line\":5,\"column\":0,\"severity\":\"information\",\"message\":\"Include file: \"tracking-analyzer/tracking_results.h\" not found.\",\"id\":\"missingInclude\"},\n{\"file\":\"/home/brendan/repositories/tracking-analyzer/tracking-analyzer/tracking-analyzer-gui/application.h\",\"line\":6,\"column\":0,\"severity\":\"information\",\"message\":\"Include file: <QApplication> not found. Please note: Cppcheck does not need standard library headers to get proper results.\",\"id\":\"missingIncludeSystem\"},\n{\"file\":\"/home/brendan/repositories/tracking-analyzer/tracking-analyzer/tracking-analyzer-gui/application.h\",\"line\":7,\"column\":0,\"severity\":\"information\",\"message\":\"Include file: <QImage> not found. Please note: Cppcheck does not need standard library headers to get proper results.\",\"id\":\"missingIncludeSystem\"},\n{\"file\":\"/home/brendan/repositories/tracking-analyzer/tracking-analyzer/tracking-analyzer-gui/application.h\",\"line\":8,\"column\":0,\"severity\":\"information\",\"message\":\"Include file: <QSettings> not found. Please note: Cppcheck does not need standard library headers to get proper results.\",\"id\":\"missingIncludeSystem\"},\n{\"file\":\"/home/brendan/repositories/tracking-analyzer/tracking-analyzer/tracking-analyzer-gui/application.h\",\"line\":9,\"column\":0,\"severity\":\"information\",\"message\":\"Include file: <gsl/pointers> not found. Please note: Cppcheck does not need standard library headers to get proper results.\",\"id\":\"missingIncludeSystem\"},\n{\"file\":\"/home/brendan/repositories/tracking-analyzer/tracking-analyzer/tracking-analyzer-gui/gui/main_window.h\",\"line\":4,\"column\":0,\"severity\":\"information\",\"message\":\"Include file: \"color.h\" not found.\",\"id\":\"missingInclude\"},\n{\"file\":\"/home/brendan/repositories/tracking-analyzer/tracking-analyzer/tracking-analyzer-gui/gui/main_window.h\",\"line\":5,\"column\":0,\"severity\":\"information\",\"message\":\"Include file: <QMainWindow> not found. Please note: Cppcheck does not need standard library headers to get proper results.\",\"id\":\"missingIncludeSystem\"},\n{\"file\":\"/home/brendan/repositories/tracking-analyzer/tracking-analyzer/tracking-analyzer-gui/gui/main_window.h\",\"line\":6,\"column\":0,\"severity\":\"information\",\"message\":\"Include file: <vector> not found. Please note: Cppcheck does not need standard library headers to get proper results.\",\"id\":\"missingIncludeSystem\"},\n{\"file\":\"/home/brendan/repositories/tracking-analyzer/tracking-analyzer/tracking-analyzer-gui/gui/main_window.h\",\"line\":34,\"column\":10,\"severity\":\"error\",\"message\":\"There is an unknown macro here somewhere. Configuration is required. If slots is a macro then please configure it.\",\"id\":\"unknownMacro\"}]"
The problem with this example is quotation marks in the missing include file paths. They break JSON parsing.
v0.1.0
Lizard checks for excessive code complexity. Add it to the TypeScript workflow and the VS Code tasks.
v0.1.0
When someone submits a new issue, run the workflow. It should update the description with a list of tasks for the assignee. The tasks are:
v0.1.0
If I open a Markdown file, VS Code Cppcheck will report a syntax error in the file.
VS Code Cppcheck should ignore files that are not C or C++.
v0.1.0
Add a setting for the user to set --enable
command options.
--enable
option to the Cppcheck command.v0.1.0
Add a setting for the path to Cppcheck. Use this path when forming the Cppcheck command.
v0.1.0
The release process should:
Offload as much as possible to a GH workflow.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.