{"categories":[{"label":"Quality Assurance","url":"https://skillfed.io/packages/category/software-development-quality-assurance/4"}],"enrichment":{"capability":"cppclean analyzes C++ source code to identify unused code, unnecessary includes, and structural problems that slow compilation in large codebases.","skillfed_tags":["c++-analysis","static-analysis","build-optimization"],"use_cases":["Reduce compilation time in large C++ projects by identifying and removing unnecessary #include directives in header files.","Detect unused functions, methods, and data members that can be safely removed from a codebase.","Find classes with virtual methods but no virtual destructors, a common source of memory leaks in C++.","Identify global and static data that may cause threading issues in multi-threaded applications.","Locate undeclared function definitions and unnecessary forward declarations during code review.","Audit header files for inconsistent case in #include statements (e.g., foo.h vs Foo.h)."],"what_it_does":"cppclean is a static analysis tool for C++ that identifies problems in source code that can slow development cycles in large projects. It parses C++ headers and source files into an abstract syntax tree and detects issues like unused functions, methods, data members, and types; unnecessary forward declarations; undeclared definitions; and redundant #include directives. The tool reports inconsistent case in includes and can suggest removing headers that are not directly referenced.\n\nThe parser is designed to handle real-world C++ code reasonably well, achieving about 99% success on Google's header files. Function bodies are tokenized rather than fully parsed into an AST. The tool runs from the command line and accepts multiple include paths to analyze. However, it has been unmaintained since 2019 and may not support modern C++ syntax or recent Python versions.","worth_installing":"No. The package is abandoned (last release 2019-07-30, no commits since 2022-07-26) and has high install friction. While it may still work for basic C++ analysis, the lack of maintenance means it will not support modern C++ standards or recent Python versions. For active C++ projects, consider maintained alternatives."},"id":"cppclean","links":{"html":"https://skillfed.io/packages/cppclean","md":"https://skillfed.io/packages/cppclean.md","pypi":"https://pypi.org/project/cppclean/"},"maintenance":{"status":"abandoned"},"meta":{"latest_release":"2019-07-30","license_spdx":null,"license_treatment":"permissive","name":"cppclean","python_support":"unspecified","summary":"Find problems in C++ source that slow development of large code bases."},"popularity":{"monthly_downloads":106408,"position":12652,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"0.13"}
