-
Notifications
You must be signed in to change notification settings - Fork 56
/
package blueprint.github
38 lines (30 loc) · 1.92 KB
/
package blueprint.github
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
# Code quality levels
## Stability color code
Color codes in ascending order of quality; for a code to be in a certain color, it has to satisfy the demands of all preceding colors.
1. Code RED-XXX: Project does not compile due to XXX compilation error of distinct kinds, i.e., all complaints of a missing function `f()` are counted as 1, regardless of place in the code they occur.
2. Code ORANGE-XXX: Project compiles (RED-000), but has XXX tests that never end
3. Code YELLOW-XXX: Requires ORANGE-000, but has XXX tests that fail or err
4. Code GREEN-XXX: YELLOW-000, plus XXX `@Ignore`d tests.
5. Code TRANSPARENT: Same as GREEN-000
`XXX` is a sequence of one or more digits making a positive integer.
The names YELLOW-1, YELLOW_1, YELLOW_01, YELLOW-0001, are isomorphic.
## Integral metrics
An integral metric such as `SC0012` has two components: a sequence (`SC` here) denoting the kind of the metric, and a non negative integer.
Here `0012` is just a long name for "12". Higher values are worse
A numerical metrics value of the project is written as `l1w35`, which means one spartanization tip, and thirty-five "ordinary" warnings. The (partial, to be extended) legend is this:
1. d (D) - number of (distinct) Javadoc warnings.
2. n (N) - number of (distinct) `` and `null` checking warnings.
3. statements (L) - number of (distinct) spartanization tips offered on the project.
3. s (S) - number of (distinct) `@SuppressWarning` offered on the project.
4. t (T) - number of (distinct) tokens
5. w (W) - number of (distinct) plain warnings.
These rules apply:
- The following are all immaterial:
- Order,
- Space, `-`, `_` and `=`
- leading zeroes
are immaterial. Consequently `D=30 W10`, `W-10D_30`, 'W -=_ 0120D030`
- Implied information might be omitted: `W1`, `w1W1` are equivalent.
- Missing information is not written, so`T?` is invalid.
## Coverage
Written as "C20" to denote 80% coverage