diff options
Diffstat (limited to 'schema')
-rw-r--r-- | schema/json/group.json | 34 | ||||
-rw-r--r-- | schema/json/hint.json | 61 | ||||
-rw-r--r-- | schema/json/input-file.json | 23 | ||||
-rw-r--r-- | schema/json/item-pointer.json | 19 | ||||
-rw-r--r-- | schema/json/item.json | 21 | ||||
-rw-r--r-- | schema/json/mask.json | 21 | ||||
-rw-r--r-- | schema/json/override.json | 16 | ||||
-rw-r--r-- | schema/json/results.json | 23 | ||||
-rw-r--r-- | schema/json/screen.json | 35 | ||||
-rw-r--r-- | schema/json/tag.json | 67 | ||||
-rw-r--r-- | schema/json/taglist.json | 10 |
11 files changed, 330 insertions, 0 deletions
diff --git a/schema/json/group.json b/schema/json/group.json new file mode 100644 index 0000000..8889f26 --- /dev/null +++ b/schema/json/group.json @@ -0,0 +1,34 @@ +{ + "$id": "https://lintian.debian.org/schema/json/lintian/group.json", + "$schema": "http://json-schema.org/draft-07/schema#", + "description": "A group of related input files examined by Lintian", + "properties": { + "group_id": { + "description": "Lintian's distinctive ID for input files that belong together", + "type": "string" + }, + "input_files": { + "description": "Files that were analyzed", + "items": { + "$ref": "/schema/json/lintian/input-file.json" + }, + "type": "array" + }, + "source_name": { + "description": "Debian name of source distribution", + "type": "string" + }, + "source_version": { + "description": "Full debianized version of source distribution", + "type": "string" + } + }, + "required": [ + "group_id", + "input_files", + "source_name", + "source_version" + ], + "title": "Lintian Group", + "type": "object" +} diff --git a/schema/json/hint.json b/schema/json/hint.json new file mode 100644 index 0000000..94cea0a --- /dev/null +++ b/schema/json/hint.json @@ -0,0 +1,61 @@ +{ + "$id": "https://lintian.debian.org/schema/json/lintian/hint.json", + "$schema": "http://json-schema.org/draft-07/schema#", + "description": "A Lintian packaging hint", + "properties": { + "masks": { + "anyOf": [ + { + "description": "Automated exemption as part of a class", + "items": { + "$ref": "/schema/json/lintian/mask.json" + }, + "type": [ + "array" + ] + }, + { + "type": "null" + } + ] + }, + "note": { + "description": "Annotation to aid understanding", + "type": "string" + }, + "override": { + "anyOf": [ + { + "$ref": "/schema/json/lintian/override.json" + }, + { + "type": "null" + } + ] + }, + "pointer": { + "anyOf": [ + { + "$ref": "/schema/json/lintian/item-pointer.json" + }, + { + "type": "null" + } + ] + }, + "tag": { + "description": "Name of Lintian tag", + "type": "string" + }, + "visibility": { + "description": "User-facing visibility", + "type": "string" + } + }, + "required": [ + "tag", + "visibility" + ], + "title": "Lintian Hint", + "type": "object" +} diff --git a/schema/json/input-file.json b/schema/json/input-file.json new file mode 100644 index 0000000..df07cdf --- /dev/null +++ b/schema/json/input-file.json @@ -0,0 +1,23 @@ +{ + "$id": "https://lintian.debian.org/schema/json/lintian/input-file.json", + "$schema": "http://json-schema.org/draft-07/schema#", + "description": "A file examined by Lintian", + "properties": { + "hints": { + "description": "Packaging hints for a given input", + "items": { + "$ref": "/schema/json/lintian/hint.json" + }, + "type": "array" + }, + "path": { + "description": "Path as given on the command line", + "type": "string" + } + }, + "required": [ + "path" + ], + "title": "Lintian Input File", + "type": "object" +} diff --git a/schema/json/item-pointer.json b/schema/json/item-pointer.json new file mode 100644 index 0000000..f9b9168 --- /dev/null +++ b/schema/json/item-pointer.json @@ -0,0 +1,19 @@ +{ + "$id": "https://lintian.debian.org/schema/json/lintian/item-pointer.json", + "$schema": "http://json-schema.org/draft-07/schema#", + "description": "A Lintian pointer to an item", + "properties": { + "item": { + "$ref": "/schema/json/lintian/item.json" + }, + "line_position": { + "description": "Line number for indicated position", + "type": "integer" + } + }, + "required": [ + "item" + ], + "title": "Lintian Item Pointer", + "type": "object" +} diff --git a/schema/json/item.json b/schema/json/item.json new file mode 100644 index 0000000..3784964 --- /dev/null +++ b/schema/json/item.json @@ -0,0 +1,21 @@ +{ + "$id": "https://lintian.debian.org/schema/json/lintian/item.json", + "$schema": "http://json-schema.org/draft-07/schema#", + "description": "A Lintian item", + "properties": { + "index": { + "description": "Index holding the item", + "type": "string" + }, + "name": { + "description": "Path without a leading slash", + "type": "string" + } + }, + "required": [ + "index", + "name" + ], + "title": "Lintian Item", + "type": "object" +} diff --git a/schema/json/mask.json b/schema/json/mask.json new file mode 100644 index 0000000..05fbd8e --- /dev/null +++ b/schema/json/mask.json @@ -0,0 +1,21 @@ +{ + "$id": "https://lintian.debian.org/schema/json/lintian/mask.json", + "$schema": "http://json-schema.org/draft-07/schema#", + "description": "A Lintian mask", + "properties": { + "excuse": { + "description": "Automated excuse", + "type": "string" + }, + "screen": { + "description": "Screen granting the exemption", + "type": "string" + } + }, + "required": [ + "excuse", + "screen" + ], + "title": "Lintian Mask", + "type": "object" +} diff --git a/schema/json/override.json b/schema/json/override.json new file mode 100644 index 0000000..089c536 --- /dev/null +++ b/schema/json/override.json @@ -0,0 +1,16 @@ +{ + "$id": "https://lintian.debian.org/schema/json/lintian/override.json", + "$schema": "http://json-schema.org/draft-07/schema#", + "description": "A Lintian override", + "properties": { + "justification": { + "description": "Distributor's justification", + "type": "string" + } + }, + "required": [ + "justification" + ], + "title": "Lintian Override", + "type": "object" +} diff --git a/schema/json/results.json b/schema/json/results.json new file mode 100644 index 0000000..5521719 --- /dev/null +++ b/schema/json/results.json @@ -0,0 +1,23 @@ +{ + "$id": "https://lintian.debian.org/schema/json/lintian/results.json", + "$schema": "http://json-schema.org/draft-07/schema#", + "description": "Results of running Lintian in JSON format", + "properties": { + "groups": { + "description": "Groups examined", + "items": { + "$ref": "/schema/json/lintian/group.json" + }, + "type": "array" + }, + "lintian_version": { + "description": "Version of the Lintian executable", + "type": "string" + } + }, + "required": [ + "lintian_version" + ], + "title": "Lintian Results", + "type": "object" +} diff --git a/schema/json/screen.json b/schema/json/screen.json new file mode 100644 index 0000000..f05be9e --- /dev/null +++ b/schema/json/screen.json @@ -0,0 +1,35 @@ +{ + "$id": "https://lintian.debian.org/schema/json/lintian/screen.json", + "$schema": "http://json-schema.org/draft-07/schema#", + "description": "A Lintian screen declaration", + "properties": { + "advocates": { + "description": "Advocates for exemption", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "description": "Screen name", + "type": "string" + }, + "reason": { + "description": "Screen explanation", + "type": "string" + }, + "see_also": { + "description": "Reference citations", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "name", + "reason" + ], + "title": "Lintian Screen", + "type": "object" +} diff --git a/schema/json/tag.json b/schema/json/tag.json new file mode 100644 index 0000000..b4c05f2 --- /dev/null +++ b/schema/json/tag.json @@ -0,0 +1,67 @@ +{ + "$id": "https://lintian.debian.org/schema/json/lintian/tag.json", + "$schema": "http://json-schema.org/draft-07/schema#", + "description": "A Lintian tag declaration", + "properties": { + "check": { + "description": "Issued by check", + "type": "string" + }, + "experimental": { + "description": "Tag is experimental", + "type": "boolean" + }, + "explanation": { + "description": "Explains condition and potential remedy", + "type": "string" + }, + "lintian_version": { + "description": "Lintian version", + "type": "string" + }, + "name": { + "description": "Tag name", + "type": "string" + }, + "name_spaced": { + "description": "Has check-based name space", + "type": "boolean" + }, + "renamed_from": { + "description": "Renamed from", + "items": { + "type": "string" + }, + "type": "array" + }, + "screens": { + "description": "Associated screens that can mask", + "items": { + "$ref": "/schema/json/lintian/screen.json" + }, + "type": "array" + }, + "see_also": { + "description": "Reference citations", + "items": { + "type": "string" + }, + "type": "array" + }, + "show_always": { + "description": "Always show", + "type": "boolean" + }, + "visibility": { + "description": "User-facing visibility", + "type": "string" + } + }, + "required": [ + "explanation", + "name", + "visibility" + ], + "title": "Lintian Tag", + "type": "object" +} diff --git a/schema/json/taglist.json b/schema/json/taglist.json new file mode 100644 index 0000000..4043183 --- /dev/null +++ b/schema/json/taglist.json @@ -0,0 +1,10 @@ +{ + "$id": "https://lintian.debian.org/schema/json/lintian/taglist.json", + "$schema": "http://json-schema.org/draft-07/schema#", + "description": "A tag list from lintian-explain-tags", + "items": { + "$ref": "/schema/json/lintian/tag.json" + }, + "title": "Lintian Tag Explanations", + "type": "array" +} |