@@ -17,6 +17,7 @@ lazy_static::lazy_static! {
17
17
18
18
#[ derive( PartialEq , Eq , Debug , serde:: Deserialize ) ]
19
19
#[ serde( rename_all = "kebab-case" ) ]
20
+ #[ serde( deny_unknown_fields) ]
20
21
pub ( crate ) struct Config {
21
22
pub ( crate ) relabel : Option < RelabelConfig > ,
22
23
pub ( crate ) assign : Option < AssignConfig > ,
@@ -38,6 +39,7 @@ pub(crate) struct Config {
38
39
}
39
40
40
41
#[ derive( PartialEq , Eq , Debug , serde:: Deserialize ) ]
42
+ #[ serde( deny_unknown_fields) ]
41
43
pub ( crate ) struct NominateConfig {
42
44
// team name -> label
43
45
pub ( crate ) teams : HashMap < String , String > ,
@@ -68,6 +70,7 @@ impl PingConfig {
68
70
}
69
71
70
72
#[ derive( PartialEq , Eq , Debug , serde:: Deserialize ) ]
73
+ #[ serde( deny_unknown_fields) ]
71
74
pub ( crate ) struct PingTeamConfig {
72
75
pub ( crate ) message : String ,
73
76
#[ serde( default ) ]
@@ -76,6 +79,7 @@ pub(crate) struct PingTeamConfig {
76
79
}
77
80
78
81
#[ derive( PartialEq , Eq , Debug , serde:: Deserialize ) ]
82
+ #[ serde( deny_unknown_fields) ]
79
83
pub ( crate ) struct AssignConfig {
80
84
/// If `true`, then posts a warning comment if the PR is opened against a
81
85
/// different branch than the default (usually master or main).
@@ -105,6 +109,7 @@ impl AssignConfig {
105
109
}
106
110
107
111
#[ derive( PartialEq , Eq , Debug , serde:: Deserialize ) ]
112
+ #[ serde( deny_unknown_fields) ]
108
113
pub ( crate ) struct NoMergesConfig {
109
114
/// No action will be taken on PRs with these substrings in the title.
110
115
#[ serde( default ) ]
@@ -121,6 +126,7 @@ pub(crate) struct NoMergesConfig {
121
126
}
122
127
123
128
#[ derive( PartialEq , Eq , Debug , serde:: Deserialize ) ]
129
+ #[ serde( deny_unknown_fields) ]
124
130
pub ( crate ) struct NoteConfig {
125
131
#[ serde( default ) ]
126
132
_empty : ( ) ,
@@ -133,6 +139,7 @@ pub(crate) struct MentionsConfig {
133
139
}
134
140
135
141
#[ derive( PartialEq , Eq , Debug , serde:: Deserialize ) ]
142
+ #[ serde( deny_unknown_fields) ]
136
143
pub ( crate ) struct MentionsPathConfig {
137
144
pub ( crate ) message : Option < String > ,
138
145
#[ serde( default ) ]
@@ -141,18 +148,21 @@ pub(crate) struct MentionsPathConfig {
141
148
142
149
#[ derive( PartialEq , Eq , Debug , serde:: Deserialize ) ]
143
150
#[ serde( rename_all = "kebab-case" ) ]
151
+ #[ serde( deny_unknown_fields) ]
144
152
pub ( crate ) struct RelabelConfig {
145
153
#[ serde( default ) ]
146
154
pub ( crate ) allow_unauthenticated : Vec < String > ,
147
155
}
148
156
149
157
#[ derive( PartialEq , Eq , Debug , serde:: Deserialize ) ]
158
+ #[ serde( deny_unknown_fields) ]
150
159
pub ( crate ) struct ShortcutConfig {
151
160
#[ serde( default ) ]
152
161
_empty : ( ) ,
153
162
}
154
163
155
164
#[ derive( PartialEq , Eq , Debug , serde:: Deserialize ) ]
165
+ #[ serde( deny_unknown_fields) ]
156
166
pub ( crate ) struct PrioritizeConfig {
157
167
pub ( crate ) label : String ,
158
168
}
@@ -176,6 +186,7 @@ impl AutolabelConfig {
176
186
}
177
187
178
188
#[ derive( PartialEq , Eq , Debug , serde:: Deserialize ) ]
189
+ #[ serde( deny_unknown_fields) ]
179
190
pub ( crate ) struct AutolabelLabelConfig {
180
191
#[ serde( default ) ]
181
192
pub ( crate ) trigger_labels : Vec < String > ,
@@ -196,6 +207,7 @@ pub(crate) struct NotifyZulipConfig {
196
207
}
197
208
198
209
#[ derive( PartialEq , Eq , Debug , serde:: Deserialize ) ]
210
+ #[ serde( deny_unknown_fields) ]
199
211
pub ( crate ) struct NotifyZulipLabelConfig {
200
212
pub ( crate ) zulip_stream : u64 ,
201
213
pub ( crate ) topic : String ,
@@ -208,6 +220,7 @@ pub(crate) struct NotifyZulipLabelConfig {
208
220
}
209
221
210
222
#[ derive( PartialEq , Eq , Debug , serde:: Deserialize ) ]
223
+ #[ serde( deny_unknown_fields) ]
211
224
pub ( crate ) struct MajorChangeConfig {
212
225
/// A username (typically a group, e.g. T-lang) to ping on Zulip for newly
213
226
/// opened proposals.
@@ -243,18 +256,22 @@ impl MajorChangeConfig {
243
256
}
244
257
245
258
#[ derive( PartialEq , Eq , Debug , serde:: Deserialize ) ]
259
+ #[ serde( deny_unknown_fields) ]
246
260
pub ( crate ) struct GlacierConfig { }
247
261
248
262
#[ derive( PartialEq , Eq , Debug , serde:: Deserialize ) ]
263
+ #[ serde( deny_unknown_fields) ]
249
264
pub ( crate ) struct CloseConfig { }
250
265
251
266
#[ derive( PartialEq , Eq , Debug , serde:: Deserialize ) ]
267
+ #[ serde( deny_unknown_fields) ]
252
268
pub ( crate ) struct ReviewSubmittedConfig {
253
269
pub ( crate ) review_labels : Vec < String > ,
254
270
pub ( crate ) reviewed_label : String ,
255
271
}
256
272
257
273
#[ derive( PartialEq , Eq , Debug , serde:: Deserialize ) ]
274
+ #[ serde( deny_unknown_fields) ]
258
275
pub ( crate ) struct ReviewRequestedConfig {
259
276
pub ( crate ) remove_labels : Vec < String > ,
260
277
pub ( crate ) add_labels : Vec < String > ,
@@ -280,6 +297,7 @@ pub(crate) async fn get(
280
297
281
298
#[ derive( PartialEq , Eq , Debug , serde:: Deserialize ) ]
282
299
#[ serde( rename_all = "kebab-case" ) ]
300
+ #[ serde( deny_unknown_fields) ]
283
301
pub ( crate ) struct GitHubReleasesConfig {
284
302
pub ( crate ) format : ChangelogFormat ,
285
303
pub ( crate ) project_name : String ,
0 commit comments