-
Notifications
You must be signed in to change notification settings - Fork 0
/
brosch-schema.json
115 lines (114 loc) · 5.04 KB
/
brosch-schema.json
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
{
"$comment": "Copyright (c) 2019 Renata Hodovan, Akos Kiss. Licensed under the BSD 3-Clause License <LICENSE.rst or https://opensource.org/licenses/BSD-3-Clause>. This file may not be copied, modified, or distributed except according to those terms.",
"$schema": "http://json-schema.org/draft-07/schema#",
"description": "Security commit history schema (version 19.7).",
"type": "object",
"properties": {
"metadata": {
"description": "Metadata of the security commit history.",
"type": "object",
"properties": {
"project": {
"description": "Name of the project that the security commit history was mined from.",
"type": "string"
},
"repository": {
"description": "URL of the project repository.",
"type": "string",
"format": "uri"
},
"issue-tracker": {
"description": "URL of the project issue tracker.",
"type": "string",
"format": "uri"
},
"generator": {
"description": "Name and version of the tool that mined the security commit history.",
"type": "string"
},
"committed-before": {
"description": "Upper bound for the commited-date of the commits in the security history.",
"type": "string",
"format": "date-time"
},
"committed-after": {
"description": "Lower bound for the commited-date of the commits in the security history.",
"type": "string",
"format": "date-time"
}
},
"required": [ "project", "repository", "issue-tracker", "generator" ]
},
"commits": {
"description": "Mined security-related commits.",
"type": "array",
"items": {
"description": "Details of a security-related commit.",
"type": "object",
"properties": {
"id": {
"description": "Commit identifier.",
"type": "string"
},
"author": {
"description": "Author of the commit.",
"type": "object",
"properties": {
"name": {
"description": "Name of the author of the commit.",
"type": "string"
},
"email": {
"description": "Email address of the author of the commit.",
"type": "string",
"format": "email"
}
}
},
"authored-date": {
"description": "The date and time the commit was authored.",
"type": "string",
"format": "date-time"
},
"committer": {
"description": "Committer of the commit.",
"type": "object",
"properties": {
"name": {
"description": "Name of the committer of the commit.",
"type": "string"
},
"email": {
"description": "Email address of the committer of the commit.",
"type": "string",
"format": "email"
}
}
},
"committed-date": {
"description": "The date and time the commit was committed to the repository.",
"type": "string",
"format": "date-time"
},
"message": {
"description": "The message attached to the commit.",
"type": "string"
},
"security-issue-ids": {
"description": "Security-related issue IDs connected to this commit.",
"type": "object",
"patternProperties": {
".*": {
"description": "Issue ID visibility.",
"type": "string",
"enum": [ "public", "private" ]
}
}
}
},
"required": [ "id", "authored-date", "committed-date", "security-issue-ids" ]
}
}
},
"required": [ "metadata", "commits" ]
}