-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdrupalCOF.txt
108 lines (94 loc) · 5.26 KB
/
drupalCOF.txt
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
Drupal Coefficient of Fail
Size
• *The source code is more than 100 MB. [ +5 points of FAIL ]*
• *If the source code also exceeds 100 MB when it is compressed [ +5 points of FAIL ]*
+10
Source Control
• There is no publicly available source control (e.g. cvs, svn, bzr, git) [ +10 points of FAIL ]
• There is publicly available source control, but:
• There is no web viewer for it [ +5 points of FAIL ]
• There is no documentation on how to use it for new users [ +5 points of FAIL ]
• You've written your own source control for this code [ +30 points of FAIL ]
• You don't actually use the existing source control [ +50 points of FAIL ]
+0
Building From Source
• There is no documentation on how to build from source [ +20 points of FAIL ]
• If documentation exists on how to build from source, but it doesn't work [ +10 points of FAIL ]
• Your source is configured with a handwritten shell script [ +10 points of FAIL ]
• Your source is configured editing flat text config files [ +20 points of FAIL]
• Your source is configured by editing code header files manually [ +30 points of FAIL ]
• Your source isn't configurable [ +50 points of FAIL ]
• *Your source builds using something that isn't GNU Make [ +10 points of FAIL ]*
• Your source only builds with third-party proprietary build tools [ +50 points of FAIL ]
• You've written your own build tool for this code [ +100 points of FAIL ]
+10
Bundling
• Your source only comes with other code projects that it depends on [ +20 points of FAIL ]
• If your source code cannot be built without first building the bundled code bits [ +10 points of FAIL ]
• If you have modified those other bundled code bits [ +40 points of FAIL ]
+0
Libraries
• Your code only builds static libraries [ +20 points of FAIL ]
• Your code can build shared libraries, but only unversioned ones [ +20 points of FAIL ]
• Your source does not try to use system libraries if present [ +20 points of FAIL ]
+0
System Install
• Your code tries to install into /opt or /usr/local [ +10 points of FAIL ]
• *Your code has no "make install" [ +20 points of FAIL ]*
• Your code doesn't work outside of the source directory [ +30 points of FAIL ]
+20
Code Oddities
• *Your code uses Windows line breaks ("DOS format" files) [ +5 points of FAIL ]*
• Your code depends on specific compiler feature functionality [ +20 points of FAIL ]
• Your code depends on specific compiler bugs [ +50 points of FAIL ]
• Your code depends on Microsoft Visual Anything [ +100 points of FAIL ]
+5
Communication
• Your project does not announce releases on a mailing list [ +5 points of FAIL ]
• Your project does not have a mailing list [ +10 points of FAIL ]
• Your project does not have a bug tracker [ +20 points of FAIL ]
• Your project does not have a website [ +50 points of FAIL]
• Your project is sourceforge vaporware [ +100 points of FAIL ]
+0
Releases
• Your project does not do sanely versioned releases (Major, Minor) [ +10 points of FAIL ]
• Your project does not do versioned releases [ +20 points of FAIL ]
• Your project does not do releases [ +50 points of FAIL ]
• Your project only does releases as attachments in web forum posts [ +100 points of FAIL ]
• Your releases are only in .zip format [ +5 points of FAIL ]
• Your releases are only in OSX .zip format [ +10 points of FAIL ]
• Your releases are only in .rar format [ +20 points of FAIL ]
• Your releases are only in .arj format [ +50 points of FAIL ]
• Your releases are only in an encapsulation format that you invented. [ +100 points of FAIL ]
• Your release does not unpack into a versioned top-level directory (e.g. glibc-2.4.2/ ) [ +10 points of FAIL ]
• Your release does not unpack into a top-level directory (e.g. glibc/ ) [ +25 points of FAIL ]
• Your release unpacks into an absurd number of directories (e.g. home/johndoe/glibc-svn/tarball/glibc/src/) [ +50 points of FAIL ]
+0
History
• Your code is a fork of another project [ +10 points of FAIL ]
• Your primary developers were not involved with the parent project [ +50 points of FAIL ]
• Until open sourcing it, your code was proprietary for:
• 1-2 years [ +10 points of FAIL ]
• 3-5 years [ +20 points of FAIL ]
• 6-10 years [ +30 points of FAIL ]
• 10+ years [ +50 points of FAIL ]
+0
Licensing
• Your code does not have per-file licensing [ +10 points of FAIL ]
• Your code contains inherent license incompatibilities [ +20 points of FAIL ]
• Your code does not have any notice of licensing intent [ +30 points of FAIL ]
• Your code doesn't include a copy of the license text [ +50 points of FAIL ]
• Your code doesn't have a license [ +100 points of FAIL ]
+0
Documentation
• Your code doesn't have a changelog [+10 points of FAIL]
• Your code doesn't have any documentation [ +20 points of FAIL ]
• Your website doesn't have any documentation [ +30 points of FAIL ]
+0
FAIL METER
• 0 points of FAIL: Perfect! All signs point to success!
• 5-25 points of FAIL: You're probably doing okay, but you could be better.
• 30-60 points of FAIL: Babies cry when your code is downloaded
• 65-90 points of FAIL: Kittens die when your code is downloaded
• 95-130 points of FAIL: HONK HONK. THE FAILBOAT HAS ARRIVED!
• 135+ points of FAIL: So much fail, your code should have its own reality TV show.