Side by side
actionlint vs cpplint
Both stand on linters. Which one you can start free with, which one lets you read the code, and what each costs once you pay.
Free plan LinuxMacSelf-hosted+2
actionlint covers workflow structure, expression semantics, reusable workflow interfaces, and selected security risks. Its browser playground, command-line installs, and integrations provide several ways to add those checks to a workflow.
Visit actionlint Free plan LinuxMacWindows
Choose cpplint if you need a free command-line style checker for C and C++ and want to run it in pre-commit or CI workflows. Developers looking for IDE support should consider that no IDE support is listed. The project is a community fork aiming to update the public version Google no longer maintains.
Visit cpplintThe facts
| actionlint | cpplint | |
|---|---|---|
| Free plan | Yes | Yes |
| Open source | Not published | Not published |
| Runs on | Linux, Mac, Self-hosted, Web, Windows | Linux, Mac, Windows |
| Lowest paid plan | Free or on request | Free or on request |
| Plans published | 1 | 1 |
| Maker | Not published | Not published |
| Website | rhysd.github.io | github.com |
| On linters | #4 of 33 | #8 of 33 |
actionlint: what it does well
- Checks workflow syntax and expression types.
- Flags script-injection risks and hard-coded credentials.
- Optional ShellCheck and Pyflakes integrations.
- Browser playground runs through WebAssembly.
- MIT-licensed with command-line and Go APIs.
What to know first
- Checks GitHub Actions workflow files specifically.
- ShellCheck and Pyflakes integrations can be disabled.
cpplint: what it does well
- Free and open source under the BSD-3-Clause license
- Supports Linux, macOS and Windows
- Finds files recursively and supports exclusions
- Can run as a pre-commit hook and in MegaLinter
- Supports block-level check suppression
What to know first
- Requires Python 3.9 or later
- The project reports that Google no longer maintains its public version
- No IDE support is listed
Alternatives to actionlint Alternatives to cpplint The whole list