@@ -88,25 +88,30 @@ def _createDictMatchingJsonSchema(
88
88
except ValueError :
89
89
manifest ._errors = f"Manifest version invalid { addonVersionNumber } "
90
90
raise
91
- addonData = {
92
- "addonId" : manifest ["name" ],
93
- "displayName" : manifest ["summary" ],
94
- "URL" : url ,
95
- "description" : manifest ["description" ],
96
- "sha256" : sha ,
97
- "addonVersionName" : manifest ["version" ],
98
- "addonVersionNumber" : dataclasses .asdict (addonVersionNumber ),
99
- "minNVDAVersion" : dataclasses .asdict (
100
- MajorMinorPatch (* manifest ["minimumNVDAVersion" ])
101
- ),
102
- "lastTestedVersion" : dataclasses .asdict (
103
- MajorMinorPatch (* manifest ["lastTestedNVDAVersion" ])
104
- ),
105
- "channel" : channel ,
106
- "publisher" : publisher ,
107
- "sourceURL" : sourceUrl ,
108
- "license" : licenseName ,
109
- }
91
+
92
+ try :
93
+ addonData = {
94
+ "addonId" : manifest ["name" ],
95
+ "displayName" : manifest ["summary" ],
96
+ "URL" : url ,
97
+ "description" : manifest ["description" ],
98
+ "sha256" : sha ,
99
+ "addonVersionName" : manifest ["version" ],
100
+ "addonVersionNumber" : dataclasses .asdict (addonVersionNumber ),
101
+ "minNVDAVersion" : dataclasses .asdict (
102
+ MajorMinorPatch (* manifest ["minimumNVDAVersion" ])
103
+ ),
104
+ "lastTestedVersion" : dataclasses .asdict (
105
+ MajorMinorPatch (* manifest ["lastTestedNVDAVersion" ])
106
+ ),
107
+ "channel" : channel ,
108
+ "publisher" : publisher ,
109
+ "sourceURL" : sourceUrl ,
110
+ "license" : licenseName ,
111
+ }
112
+ except KeyError as e :
113
+ manifest ._errors = f"Manifest missing required key '{ e .args [0 ]} '."
114
+ raise
110
115
111
116
# Add optional fields
112
117
homepage = manifest .get ("url" )
0 commit comments