Linters
The following tables detail the linters that we are currently using:
Languages
| Language |
Linter |
Details |
| Bash |
BASH_EXEC |
bash-exec |
| Bash |
BASH_SHELLCHECK |
shellcheck |
| Bash |
BASH_SHFMT |
shfmt |
| C |
C_CLANG_FORMAT |
clang-format |
| C |
C_CPPLINT |
cpplint |
| C# |
CSHARP_CSHARPIER |
csharpier |
| C# |
CSHARP_DOTNET_FORMAT |
dotnet-format |
| C# |
CSHARP_ROSLYNATOR |
roslynator |
| C++ |
CPP_CLANG_FORMAT |
clang-format |
| C++ |
CPP_CPPLINT |
cpplint |
| Clojure |
CLOJURE_CLJSTYLE |
Not Used |
| Clojure |
CLOJURE_CLJ_KONDO |
Not Used |
| CoffeeScript |
COFFEE_COFFEELINT |
coffeelint |
| Dart |
DART_DARTANALYZER |
dartanalyzer |
| Go |
GO_GOLANGCI_LINT |
golangci-lint |
| Go |
GO_REVIVE |
revive |
| Groovy |
GROOVY_NPM_GROOVY_LINT |
Not Used |
| Java |
JAVA_CHECKSTYLE |
checkstyle |
| Java |
JAVA_PMD |
pmd |
| JavaScript |
JAVASCRIPT_ES |
eslint |
| JavaScript |
JAVASCRIPT_PRETTIER |
Not Used |
| JavaScript |
JAVASCRIPT_STANDARD |
standard |
| JSX |
JSX_ESLINT |
eslint |
| Kotlin |
KOTLIN_DETEKT |
detekt |
| Kotlin |
KOTLIN_KTLINT |
ktlint |
| Lua |
LUA_LUACHECK |
Not Used |
| Lua |
LUA_SELENE |
Not Used |
| Lua |
LUA_STYLUA |
Not Used |
| Makefile |
MAKEFILE_CHECKMAKE |
checkmake |
| Perl |
PERL_PERLCRITIC |
Not Used |
| PHP |
PHP_PHPCS |
Not Used |
| PHP |
PHP_PHPCSFIXER |
Not Used |
| PHP |
PHP_PHPLINT |
Not Used |
| PHP |
PHP_PHPSTAN |
Not Used |
| PHP |
PHP_PSALM |
Not Used |
| Powershell |
POWERSHELL_POWERSHELL |
Not Used |
| Powershell |
POWERSHELL_POWERSHELL_FORMATTER |
Not Used |
| Python |
PYTHON_BANDIT |
bandit |
| Python |
PYTHON_BLACK |
black |
| Python |
PYTHON_FLAKE8 |
flake8 |
| Python |
PYTHON_ISORT |
isort |
| Python |
PYTHON_MYPY |
mypy |
| Python |
PYTHON_PYLINT |
pylint |
| Python |
PYTHON_PYRIGHT |
pyright |
| Python |
PYTHON_RUFF |
ruff |
| R |
R_LINTR |
lintr |
| Raku |
RAKU_RAKU |
Not Used |
| Ruby |
RUBY_RUBOCOP |
Not Used (RuboCop is used directly) |
| Rust |
RUST_CLIPPY |
clippy |
| Salesforce |
SALESFORCE_LIGHTNING_FLOW_SCANNER |
Not Used |
| Salesforce |
SALESFORCE_SFDX_SCANNER_APEX |
Not Used |
| Salesforce |
SALESFORCE_SFDX_SCANNER_AURA |
Not Used |
| Salesforce |
SALESFORCE_SFDX_SCANNER_LWC |
Not Used |
| Scala |
SCALA_SCALAFIX |
scalafix |
| SQL |
SQL_SQLFLUFF |
sqlfluff |
| SQL |
SQL_TSQLLINT |
tsqllint |
| Swift |
SWIFT_SWIFTLINT |
swiftlint |
| TSX |
TSX_ESLINT |
eslint |
| TypeScript |
TYPESCRIPT_ES |
eslint |
| TypeScript |
TYPESCRIPT_PRETTIER |
Not Used |
| TypeScript |
TYPESCRIPT_STANDARD |
ts-standard |
| VB.Net |
VBDOTNET_DOTNET_FORMAT |
Not Used |
| Format |
Linter |
Details |
| CSS |
CSS_STYLELINT |
stylelint |
| ENV |
ENV_DOTENV_LINTER |
dotenv-linter |
| GraphQL |
GRAPHQL_GRAPHQL_SCHEMA_LINTER |
Not Used |
| HTML |
HTML_DJLINT |
Not Used (Refuses to see config file) |
| HTML |
HTML_HTMLHINT |
htmlhint |
| JSON |
JSON_ESLINT_PLUGIN_JSONC |
eslint-plugin-jsonc |
| JSON |
JSON_JSONLINT |
jsonlint |
| JSON |
JSON_NPM_PACKAGE_JSON_LINT |
npm-package-json-lint |
| JSON |
JSON_PRETTIER |
Not Used |
| JSON |
JSON_V8R |
v8r |
| LaTeX |
LATEX_CHKTEX |
Not Used |
| Markdown |
MARKDOWN_MARKDOWNLINT |
markdownlint |
| Markdown |
MARKDOWN_MARKDOWN_LINK_CHECK |
markdown-link-check |
| Markdown |
MARKDOWN_MARKDOWN_TABLE_FORMATTER |
markdown-table-formatter |
| Markdown |
MARKDOWN_REMARK_LINT |
remark-lint |
| Protocol Buffers |
PROTOBUF_PROTOLINT |
Not Used |
| reStructuredText |
RST_RSTCHECK |
Not Used |
| reStructuredText |
RST_RSTFMT |
Not Used |
| reStructuredText |
RST_RST_LINT |
Not Used |
| XML |
XML_XMLLINT |
xmllint |
| YAML |
YAML_PRETTIER |
Not Used |
| YAML |
YAML_V8R |
v8r |
| YAML |
YAML_YAMLLINT |
yamllint |
| Tooling format |
Linter |
Details |
| GitHub Action |
ACTION_ACTIONLINT |
actionlint |
| Ansible |
ANSIBLE_ANSIBLE_LINT |
ansible-lint |
| Api |
API_SPECTRAL |
spectral |
| ARM Templates |
ARM_ARM_TTK |
arm-ttk |
| Bicep |
BICEP_BICEP_LINTER |
Not Used |
| CloudFormation |
CLOUDFORMATION_CFN_LINT |
cfn-lint |
| Dockerfile |
DOCKERFILE_HADOLINT |
hadolint |
| EditorConfig |
EDITORCONFIG_EDITORCONFIG_CHECKER |
editorconfig-checker |
| Gherkin |
GHERKIN_GHERKIN_LINT |
Not Used |
| Kubernetes |
KUBERNETES_HELM |
helm |
| Kubernetes |
KUBERNETES_KUBECONFORM |
kubeconform |
| Kubernetes |
KUBERNETES_KUBESCAPE |
kubescape |
| Puppet |
PUPPET_PUPPET_LINT |
puppet-lint |
| Snakemake |
SNAKEMAKE_LINT |
Not Used |
| Snakemake |
SNAKEMAKE_SNAKEFMT |
Not Used |
| Tekton |
TEKTON_TEKTON_LINT |
Not Used |
| Terraform |
TERRAFORM_TERRAFORM_FMT |
terraform-fmt |
| Terraform |
TERRAFORM_TERRAGRUNT |
terragrunt |
| Terraform |
TERRAFORM_TERRASCAN |
terrascan |
| Terraform |
TERRAFORM_TFLINT |
tflint |
Other
| Other |
Linter |
Details |
| Copypaste |
COPYPASTE_JSCPD |
jscpd |
| Repository |
REPOSITORY_CHECKOV |
checkov |
| Repository |
REPOSITORY_DEVSKIM |
devskim |
| Repository |
REPOSITORY_DUSTILOCK |
dustilock |
| Repository |
REPOSITORY_GITLEAKS |
gitleaks |
| Repository |
REPOSITORY_GIT_DIFF |
git_diff |
| Repository |
REPOSITORY_GRYPE |
grype |
| Repository |
REPOSITORY_KICS |
kics |
| Repository |
REPOSITORY_LS_LINT |
ls-lint |
| Repository |
REPOSITORY_SECRETLINT |
secretlint |
| Repository |
REPOSITORY_SEMGREP |
semgrep |
| Repository |
REPOSITORY_SYFT |
syft |
| Repository |
REPOSITORY_TRIVY |
trivy |
| Repository |
REPOSITORY_TRIVY_SBOM |
trivy-sbom |
| Repository |
REPOSITORY_TRUFFLEHOG |
trufflehog |
| Spelling |
SPELL_CSPELL |
Not Used |
| Spelling |
SPELL_LYCHEE |
lychee |
| Spelling |
SPELL_PROSELINT |
proselint |
| Spelling |
SPELL_VALE |
vale |