Skip to main content Link Menu Expand (external link) Copy Copied

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_CPPLINT cpplint
C# CSHARP_CSHARPIER Not Used
C# CSHARP_DOTNET_FORMAT dotnet-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_KTLINT ktlint
Lua LUA_LUACHECK Not Used
Makefile MAKEFILE_CHECKMAKE checkmake
Perl PERL_PERLCRITIC Not Used
PHP PHP_PHPCS 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 Not Used
R R_LINTR lintr
Raku RAKU_RAKU Not Used
Ruby RUBY_RUBOCOP Not Used (RuboCop is used directly)
Rust RUST_CLIPPY clippy
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_SQL_LINT sql-lint
SQL SQL_TSQLLINT tsqllint
Swift SWIFT_SWIFTLINT swiftlint
TSX TSX_ESLINT eslint
TypeScript TYPESCRIPT_ES eslint
TypeScript TYPESCRIPT_PRETTIER Not Used
TypeScript TYPESCRIPT_STANDARD standard
VB.Net VBDOTNET_DOTNET_FORMAT Not Used

Formats

Format Linter Details
CSS CSS_SCSS_LINT Not Used (scss-lint recommends using stylelint)
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 formats

Tooling format Linter Details
GitHub Action ACTION_ACTIONLINT actionlint
Ansible ANSIBLE_ANSIBLE_LINT ansible-lint
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 Not Used
Kubernetes KUBERNETES_KUBECONFORM kubeconform
Kubernetes KUBERNETES_KUBESCAPE Not Used
Openapi OPENAPI_SPECTRAL spectral
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_KICS Not Used
Repository REPOSITORY_SECRETLINT secretlint
Repository REPOSITORY_SEMGREP semgrep
Repository REPOSITORY_SYFT syft
Repository REPOSITORY_TRIVY trivy
Spelling SPELL_CSPELL Not Used
Spelling SPELL_PROSELINT proselint
Spelling SPELL_VALE Not Used