repolinter
Version:
Lint open source repositories
165 lines (163 loc) • 4.54 kB
JSON
{
"axioms": {
"linguist": "language",
"licensee": "license",
"packagers": "packager"
},
"rules": {
"all": {
"license-file-exists:file-existence": [
"error",
{ "files": ["LICENSE*", "COPYING*"], "nocase": true }
],
"readme-file-exists:file-existence": [
"error",
{ "files": ["README*"], "nocase": true }
],
"contributing-file-exists:file-existence": [
"error",
{ "files": ["{docs/,.github/,}CONTRIB*"] }
],
"code-of-conduct-file-exists:file-existence": [
"error",
{
"files": [
"{docs/,.github/,}CODEOFCONDUCT*",
"{docs/,.github/,}CODE-OF-CONDUCT*",
"{docs/,.github/,}CODE_OF_CONDUCT*"
]
}
],
"changelog-file-exists:file-existence": [
"error",
{ "files": ["CHANGELOG*"], "nocase": true }
],
"security-file-exists:file-existence": [
"error",
{ "files": ["{docs/,.github/,}SECURITY.md"] }
],
"support-file-exists:file-existence": [
"error",
{ "files": ["{docs/,.github/,}SUPPORT*"], "nocase": true }
],
"readme-references-license:file-contents": [
"error",
{ "files": ["README*"], "content": "license", "flags": "i" }
],
"binaries-not-present:file-type-exclusion": [
"error",
{ "type": ["**/*.exe", "**/*.dll", "!node_modules/**"] }
],
"test-directory-exists:directory-existence": [
"error",
{ "directories": ["**/test*", "**/specs"], "nocase": true }
],
"integrates-with-ci:file-existence": [
"error",
{
"files": [
".gitlab-ci.yml",
".travis.yml",
"appveyor.yml",
".appveyor.yml",
"circle.yml",
".circleci/config.yml",
"Jenkinsfile",
".drone.yml",
".github/workflows/*",
"azure-pipelines.yml"
]
}
],
"code-of-conduct-file-contains-email:file-contents": [
"error",
{
"files": [
"CODEOFCONDUCT*",
"CODE-OF-CONDUCT*",
"CODE_OF_CONDUCT*",
".github/CODEOFCONDUCT*",
".github/CODE-OF-CONDUCT*",
".github/CODE_OF_CONDUCT*"
],
"content": ".+@.+\\..+",
"flags": "i",
"human-readable-content": "email address"
}
],
"source-license-headers-exist:file-starts-with": [
"warning",
{
"files": ["**/*.js", "!node_modules/**"],
"lineCount": 5,
"patterns": ["Copyright", "License"],
"flags": "i"
}
],
"github-issue-template-exists:file-existence": [
"error",
{ "files": ["ISSUE_TEMPLATE*", ".github/ISSUE_TEMPLATE*"] }
],
"github-pull-request-template-exists:file-existence": [
"error",
{
"files": ["PULL_REQUEST_TEMPLATE*", ".github/PULL_REQUEST_TEMPLATE*"]
}
]
},
"language=javascript": {
"javascript-package-metadata-exists:file-existence": [
"error",
{ "files": ["package.json"] }
]
},
"language=ruby": {
"ruby-package-metadata-exists:file-existence": [
"error",
{ "files": ["Gemfile"] }
]
},
"language=java": {
"java-package-metadata-exists:file-existence": [
"error",
{ "files": ["pom.xml", "build.xml", "build.gradle"] }
]
},
"license=*": {
"license-detectable-by-licensee": ["error"]
},
"license=Apache-2.0": {
"notice-file-exists:apache-notice": ["error"]
},
"language=python": {
"python-package-metadata-exists:file-existence": [
"error",
{ "files": ["setup.py", "requirements.txt"] }
]
},
"language=objective-c": {
"objective-c-package-metadata-exists:file-existence": [
"error",
{ "files": ["Cartfile", "Podfile", "*.podspec"] }
]
},
"language=swift": {
"swift-package-metadata-exists:file-existence": [
"error",
{ "files": ["Package.swift"] }
]
},
"language=erlang": {
"erlang-package-metadata-exists:file-existence": [
"error",
{ "files": ["rebar.config"] }
]
},
"language=elixir": {
"elixir-package-metadata-exists:file-existence": [
"error",
{ "files": ["mix.exs"] }
]
}
}
}