-
Notifications
You must be signed in to change notification settings - Fork 123
/
.codeclimate.yml
128 lines (111 loc) · 2.51 KB
/
.codeclimate.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
# This is our default .CodeClimate.yml, broken out by language.
version: "2"
plugins:
# ---------------
# Cross-language plugins. Should always be on.
duplication: # Looks for similar and identical code blocks
enabled: true
config:
languages:
go:
java:
javascript:
php:
python:
python_version: 3
ruby:
swift:
typescript:
fixme: # Flags any FIXME, TODO, BUG, XXX, HACK comments so they can be fixed
enabled: true
issue_override:
severity: info # Don't fail PRs for FIXME tags, but still flag them
config:
strings:
- FIXME
- TODO
- HACK
- XXX
- BUG
# ---------------
# Commonly-used languages - run time is minimal and all of these will work
# whether files of that language are found or not. In general, leave uncommented
# Markdown
markdownlint:
enabled: true
issue_override:
severity: info # Should be redundant as CC says markdownlint defaults to
# info already, but including it here to remind us it's so
# Go
gofmt:
enabled: false
golint:
enabled: false
govet:
enabled: false
# Ruby
flog:
enabled: true
reek:
enabled: true
rubocop:
enabled: true
channel: rubocop-1-8-1
# Shell scripts
shellcheck:
enabled: true
# ---------------
# Other languages - will work with or without language files present. Again,
# runtime is minimal, so OK to leave uncommented.
# CoffeeScript
coffeelint:
enabled: true
# CSS
csslint:
enabled: true
# Groovy
codenarc:
enabled: true
# Java
pmd:
enabled: true
sonar-java:
enabled: true
config:
sonar.java.source: "7"
# Node.js
nodesecurity:
enabled: true
# PHP
phan:
enabled: true
config:
file_extensions: "php"
phpcodesniffer:
enabled: true
config:
file_extensions: "php,inc,lib"
# Using Wordpress standards as our one PHP repo is a Wordpress theme
standards: "PSR1,PSR2,WordPress,WordPress-Core,WordPress-Extra"
phpmd:
enabled: true
config:
file_extensions: "php,inc,lib"
rulesets: "cleancode,codesize,controversial,naming,unusedcode"
sonar-php:
enabled: true
# Python
bandit:
enabled: true
pep8:
enabled: true
radon:
enabled: true
sonar-python:
enabled: true
# Ruby - requires presence of Gemfile and Gemfile.lock
bundler-audit:
enabled: true
# Rails - requires detecting a Rails application
brakeman:
enabled: true