blob: 651a66b7b85e094c66fc7dab6a2b9a96d629db2b [file] [log] [blame]
Dmytro Shteflyuk2097ed72025-12-17 23:00:37 -05001version: 2
2mergeable:
3 - when: pull_request.*
Dmytro Shteflyukee261952026-03-18 16:28:43 -04004 name: Add 'c_glib' label to PR if changeset includes changes to the lib/c_glib, test/c_glib, or tutorial/c_glib directories
Dmytro Shteflyuk2097ed72025-12-17 23:00:37 -05005 validate:
6 - do: changeset
7 or:
8 - must_include:
9 regex: 'lib/c_glib/.*'
10 - must_include:
11 regex: 'test/c_glib/.*'
Dmytro Shteflyukee261952026-03-18 16:28:43 -040012 - must_include:
13 regex: 'tutorial/c_glib/.*'
Dmytro Shteflyuk2097ed72025-12-17 23:00:37 -050014 pass:
15 - do: labels
16 labels: ['c_glib']
17 mode: 'add'
18
19 - when: pull_request.*
Dmytro Shteflyukee261952026-03-18 16:28:43 -040020 name: Add 'c++' label to PR if changeset includes changes to the lib/cpp, test/cpp, or tutorial/cpp directories
Dmytro Shteflyuk2097ed72025-12-17 23:00:37 -050021 validate:
22 - do: changeset
23 or:
24 - must_include:
25 regex: 'lib/cpp/.*'
26 - must_include:
27 regex: 'test/cpp/.*'
Dmytro Shteflyukee261952026-03-18 16:28:43 -040028 - must_include:
29 regex: 'tutorial/cpp/.*'
Dmytro Shteflyuk2097ed72025-12-17 23:00:37 -050030 pass:
31 - do: labels
32 labels: ['c++']
33 mode: 'add'
34
35 - when: pull_request.*
Dmytro Shteflyukee261952026-03-18 16:28:43 -040036 name: Add 'dart' label to PR if changeset includes changes to the lib/dart, test/dart, or tutorial/dart directories
Dmytro Shteflyuk2097ed72025-12-17 23:00:37 -050037 validate:
38 - do: changeset
39 or:
40 - must_include:
41 regex: 'lib/dart/.*'
42 - must_include:
43 regex: 'test/dart/.*'
Dmytro Shteflyukee261952026-03-18 16:28:43 -040044 - must_include:
45 regex: 'tutorial/dart/.*'
Dmytro Shteflyuk2097ed72025-12-17 23:00:37 -050046 pass:
47 - do: labels
48 labels: ['dart']
49 mode: 'add'
50
51 - when: pull_request.*
Dmytro Shteflyukee261952026-03-18 16:28:43 -040052 name: Add 'delphi' label to PR if changeset includes changes to the lib/delphi, test/delphi, or tutorial/delphi directories
Dmytro Shteflyuk2097ed72025-12-17 23:00:37 -050053 validate:
54 - do: changeset
55 or:
56 - must_include:
57 regex: 'lib/delphi/.*'
58 - must_include:
59 regex: 'test/delphi/.*'
Dmytro Shteflyukee261952026-03-18 16:28:43 -040060 - must_include:
61 regex: 'tutorial/delphi/.*'
Dmytro Shteflyuk2097ed72025-12-17 23:00:37 -050062 pass:
63 - do: labels
64 labels: ['delphi']
65 mode: 'add'
66
67 - when: pull_request.*
Dmytro Shteflyukee261952026-03-18 16:28:43 -040068 name: Add 'erlang' label to PR if changeset includes changes to the lib/erl, test/erl, or tutorial/erl directories
Dmytro Shteflyuk2097ed72025-12-17 23:00:37 -050069 validate:
70 - do: changeset
71 or:
72 - must_include:
73 regex: 'lib/erl/.*'
74 - must_include:
75 regex: 'test/erl/.*'
Dmytro Shteflyukee261952026-03-18 16:28:43 -040076 - must_include:
77 regex: 'tutorial/erl/.*'
Dmytro Shteflyuk2097ed72025-12-17 23:00:37 -050078 pass:
79 - do: labels
80 labels: ['erlang']
81 mode: 'add'
82
83 - when: pull_request.*
Dmytro Shteflyukee261952026-03-18 16:28:43 -040084 name: Add 'golang' label to PR if changeset includes changes to the lib/go, test/go, or tutorial/go directories
Dmytro Shteflyuk2097ed72025-12-17 23:00:37 -050085 validate:
86 - do: changeset
87 or:
88 - must_include:
89 regex: 'lib/go/.*'
90 - must_include:
91 regex: 'test/go/.*'
Dmytro Shteflyukee261952026-03-18 16:28:43 -040092 - must_include:
93 regex: 'tutorial/go/.*'
Dmytro Shteflyuk2097ed72025-12-17 23:00:37 -050094 pass:
95 - do: labels
96 labels: ['golang']
97 mode: 'add'
98
99 - when: pull_request.*
Dmytro Shteflyukee261952026-03-18 16:28:43 -0400100 name: Add 'haxe' label to PR if changeset includes changes to the lib/haxe, test/haxe, or tutorial/haxe directories
Dmytro Shteflyuk2097ed72025-12-17 23:00:37 -0500101 validate:
102 - do: changeset
103 or:
104 - must_include:
105 regex: 'lib/haxe/.*'
106 - must_include:
107 regex: 'test/haxe/.*'
Dmytro Shteflyukee261952026-03-18 16:28:43 -0400108 - must_include:
109 regex: 'tutorial/haxe/.*'
Dmytro Shteflyuk2097ed72025-12-17 23:00:37 -0500110 pass:
111 - do: labels
112 labels: ['haxe']
113 mode: 'add'
114
115 - when: pull_request.*
Dmytro Shteflyukee261952026-03-18 16:28:43 -0400116 name: Add 'java' label to PR if changeset includes changes to the lib/java, lib/javame, or tutorial/java directories
Dmytro Shteflyuk2097ed72025-12-17 23:00:37 -0500117 validate:
118 - do: changeset
119 or:
120 - must_include:
121 regex: 'lib/java/.*'
122 - must_include:
123 regex: 'lib/javame/.*'
Dmytro Shteflyukee261952026-03-18 16:28:43 -0400124 - must_include:
125 regex: 'tutorial/java/.*'
Dmytro Shteflyuk2097ed72025-12-17 23:00:37 -0500126 pass:
127 - do: labels
128 labels: ['java']
129 mode: 'add'
130
131 - when: pull_request.*
Dmytro Shteflyukee261952026-03-18 16:28:43 -0400132 name: Add 'javascript' label to PR if changeset includes changes to the lib/js or tutorial/js directories
Dmytro Shteflyuk2097ed72025-12-17 23:00:37 -0500133 validate:
134 - do: changeset
135 or:
136 - must_include:
137 regex: 'lib/js/.*'
Dmytro Shteflyukee261952026-03-18 16:28:43 -0400138 - must_include:
139 regex: 'tutorial/js/.*'
Dmytro Shteflyuk2097ed72025-12-17 23:00:37 -0500140 pass:
141 - do: labels
142 labels: ['javascript']
143 mode: 'add'
144
145 - when: pull_request.*
Dmytro Shteflyukee261952026-03-18 16:28:43 -0400146 name: Add 'json' label to PR if changeset includes changes to the lib/json directory
Dmytro Shteflyuk2097ed72025-12-17 23:00:37 -0500147 validate:
148 - do: changeset
149 or:
150 - must_include:
151 regex: 'lib/json/.*'
152 pass:
153 - do: labels
154 labels: ['json']
155 mode: 'add'
156
157 - when: pull_request.*
Dmytro Shteflyukee261952026-03-18 16:28:43 -0400158 name: Add 'kotlin' label to PR if changeset includes changes to the lib/kotlin directory
Dmytro Shteflyuk2097ed72025-12-17 23:00:37 -0500159 validate:
160 - do: changeset
161 or:
162 - must_include:
163 regex: 'lib/kotlin/.*'
164 pass:
165 - do: labels
166 labels: ['kotlin']
167 mode: 'add'
168
169 - when: pull_request.*
170 name: Add 'lua' label to PR if changeset includes changes to the lib/lua or test/lua directories
171 validate:
172 - do: changeset
173 or:
174 - must_include:
175 regex: 'lib/lua/.*'
176 - must_include:
177 regex: 'test/lua/.*'
178 pass:
179 - do: labels
180 labels: ['lua']
181 mode: 'add'
182
183 - when: pull_request.*
Dmytro Shteflyukee261952026-03-18 16:28:43 -0400184 name: Add 'c#' label to PR if changeset includes changes to the lib/netstd, test/netstd, or tutorial/netstd directories
Dmytro Shteflyuk2097ed72025-12-17 23:00:37 -0500185 validate:
186 - do: changeset
187 or:
188 - must_include:
189 regex: 'lib/netstd/.*'
190 - must_include:
191 regex: 'test/netstd/.*'
Dmytro Shteflyukee261952026-03-18 16:28:43 -0400192 - must_include:
193 regex: 'tutorial/netstd/.*'
Dmytro Shteflyuk2097ed72025-12-17 23:00:37 -0500194 pass:
195 - do: labels
196 labels: ['c#']
197 mode: 'add'
198
199 - when: pull_request.*
Dmytro Shteflyukee261952026-03-18 16:28:43 -0400200 name: Add 'nodejs' label to PR if changeset includes changes to the lib/nodejs or tutorial/nodejs directories
Dmytro Shteflyuk2097ed72025-12-17 23:00:37 -0500201 validate:
202 - do: changeset
203 or:
204 - must_include:
205 regex: 'lib/nodejs/.*'
Dmytro Shteflyukee261952026-03-18 16:28:43 -0400206 - must_include:
207 regex: 'tutorial/nodejs/.*'
Dmytro Shteflyuk2097ed72025-12-17 23:00:37 -0500208 pass:
209 - do: labels
210 labels: ['nodejs']
211 mode: 'add'
212
213 - when: pull_request.*
Dmytro Shteflyukee261952026-03-18 16:28:43 -0400214 name: Add 'typescript' label to PR if changeset includes changes to the lib/nodets or lib/ts directories
Dmytro Shteflyuk2097ed72025-12-17 23:00:37 -0500215 validate:
216 - do: changeset
217 or:
218 - must_include:
219 regex: 'lib/nodets/.*'
Dmytro Shteflyukee261952026-03-18 16:28:43 -0400220 - must_include:
221 regex: 'lib/ts/.*'
Dmytro Shteflyuk2097ed72025-12-17 23:00:37 -0500222 pass:
223 - do: labels
224 labels: ['typescript']
225 mode: 'add'
226
227 - when: pull_request.*
Dmytro Shteflyukee261952026-03-18 16:28:43 -0400228 name: Add 'ocaml' label to PR if changeset includes changes to the lib/ocaml, test/ocaml, or tutorial/ocaml directories
Dmytro Shteflyuk2097ed72025-12-17 23:00:37 -0500229 validate:
230 - do: changeset
231 or:
232 - must_include:
233 regex: 'lib/ocaml/.*'
234 - must_include:
235 regex: 'test/ocaml/.*'
Dmytro Shteflyukee261952026-03-18 16:28:43 -0400236 - must_include:
237 regex: 'tutorial/ocaml/.*'
Dmytro Shteflyuk2097ed72025-12-17 23:00:37 -0500238 pass:
239 - do: labels
240 labels: ['ocaml']
241 mode: 'add'
242
243 - when: pull_request.*
Dmytro Shteflyukee261952026-03-18 16:28:43 -0400244 name: Add 'perl' label to PR if changeset includes changes to the lib/perl, test/perl, or tutorial/perl directories
Dmytro Shteflyuk2097ed72025-12-17 23:00:37 -0500245 validate:
246 - do: changeset
247 or:
248 - must_include:
249 regex: 'lib/perl/.*'
250 - must_include:
251 regex: 'test/perl/.*'
Dmytro Shteflyukee261952026-03-18 16:28:43 -0400252 - must_include:
253 regex: 'tutorial/perl/.*'
Dmytro Shteflyuk2097ed72025-12-17 23:00:37 -0500254 pass:
255 - do: labels
256 labels: ['perl']
257 mode: 'add'
258
259 - when: pull_request.*
Dmytro Shteflyukee261952026-03-18 16:28:43 -0400260 name: Add 'php' label to PR if changeset includes changes to the lib/php, test/php, or tutorial/php directories
Dmytro Shteflyuk2097ed72025-12-17 23:00:37 -0500261 validate:
262 - do: changeset
263 or:
264 - must_include:
265 regex: 'lib/php/.*'
266 - must_include:
267 regex: 'test/php/.*'
Dmytro Shteflyukee261952026-03-18 16:28:43 -0400268 - must_include:
269 regex: 'tutorial/php/.*'
Dmytro Shteflyuk2097ed72025-12-17 23:00:37 -0500270 pass:
271 - do: labels
272 labels: ['php']
273 mode: 'add'
274
275 - when: pull_request.*
Dmytro Shteflyukee261952026-03-18 16:28:43 -0400276 name: Add 'python' label to PR if changeset includes changes to the lib/py, test/py, test/py.tornado, test/py.twisted, tutorial/py, tutorial/py.tornado, or tutorial/py.twisted directories
Dmytro Shteflyuk2097ed72025-12-17 23:00:37 -0500277 validate:
278 - do: changeset
279 or:
280 - must_include:
281 regex: 'lib/py/.*'
282 - must_include:
283 regex: 'test/py/.*'
284 - must_include:
285 regex: 'test/py.tornado/.*'
286 - must_include:
287 regex: 'test/py.twisted/.*'
Dmytro Shteflyukee261952026-03-18 16:28:43 -0400288 - must_include:
289 regex: 'tutorial/py/.*'
290 - must_include:
291 regex: 'tutorial/py.tornado/.*'
292 - must_include:
293 regex: 'tutorial/py.twisted/.*'
Dmytro Shteflyuk2097ed72025-12-17 23:00:37 -0500294 pass:
295 - do: labels
296 labels: ['python']
297 mode: 'add'
298
299 - when: pull_request.*
Dmytro Shteflyukee261952026-03-18 16:28:43 -0400300 name: Add 'ruby' label to PR if changeset includes changes to the lib/rb, test/rb, or tutorial/rb directories
Dmytro Shteflyuk2097ed72025-12-17 23:00:37 -0500301 validate:
302 - do: changeset
303 or:
304 - must_include:
305 regex: 'lib/rb/.*'
306 - must_include:
307 regex: 'test/rb/.*'
Dmytro Shteflyukee261952026-03-18 16:28:43 -0400308 - must_include:
309 regex: 'tutorial/rb/.*'
Dmytro Shteflyuk2097ed72025-12-17 23:00:37 -0500310 pass:
311 - do: labels
312 labels: ['ruby']
313 mode: 'add'
314
315 - when: pull_request.*
Dmytro Shteflyukee261952026-03-18 16:28:43 -0400316 name: Add 'rust' label to PR if changeset includes changes to the lib/rs, test/rs, or tutorial/rs directories
Dmytro Shteflyuk2097ed72025-12-17 23:00:37 -0500317 validate:
318 - do: changeset
319 or:
320 - must_include:
321 regex: 'lib/rs/.*'
322 - must_include:
323 regex: 'test/rs/.*'
Dmytro Shteflyukee261952026-03-18 16:28:43 -0400324 - must_include:
325 regex: 'tutorial/rs/.*'
Dmytro Shteflyuk2097ed72025-12-17 23:00:37 -0500326 pass:
327 - do: labels
Dmytro Shteflyukee261952026-03-18 16:28:43 -0400328 labels: ['rust']
Dmytro Shteflyuk2097ed72025-12-17 23:00:37 -0500329 mode: 'add'
330
331 - when: pull_request.*
Dmytro Shteflyukee261952026-03-18 16:28:43 -0400332 name: Add 'swift' label to PR if changeset includes changes to the lib/swift, test/swift, or tutorial/swift directories
Dmytro Shteflyuk2097ed72025-12-17 23:00:37 -0500333 validate:
334 - do: changeset
335 or:
336 - must_include:
337 regex: 'lib/swift/.*'
338 - must_include:
339 regex: 'test/swift/.*'
Dmytro Shteflyukee261952026-03-18 16:28:43 -0400340 - must_include:
341 regex: 'tutorial/swift/.*'
Dmytro Shteflyuk2097ed72025-12-17 23:00:37 -0500342 pass:
343 - do: labels
344 labels: ['swift']
345 mode: 'add'
346
347 - when: pull_request.*
348 name: Add 'compiler' label to PR if changeset includes changes to the compiler/cpp directory
349 validate:
350 - do: changeset
351 must_include:
352 regex: 'compiler/cpp/.*'
353 pass:
354 - do: labels
355 labels: ['compiler']
356 mode: 'add'
357
358 - when: pull_request.*
Dmytro Shteflyukee261952026-03-18 16:28:43 -0400359 name: Add 'testsuite' label to PR if changeset includes changes to shared test schemas, fixtures, or harnesses
360 validate:
361 - do: changeset
362 or:
363 - must_include:
364 regex: '^test/[^/]+\.thrift$'
365 - must_include:
366 regex: '^test/(Makefile|Makefile\.am|Makefile\.in|README\.md|index\.html|known_failures_Linux\.json|rebuild_known_failures\.sh|result\.js|results\.json|test\.py|tests\.json|valgrind\.suppress)$'
367 - must_include:
368 regex: '^test/(audit|crossrunner|features|keys|log|partial|threads|v0\.16)/.*'
369 pass:
370 - do: labels
371 labels: ['testsuite']
372 mode: 'add'
373
374 - when: pull_request.*
375 name: Add 'build and general CI' label to PR if changeset includes changes to CMake, automake, or build system files
376 validate:
377 - do: changeset
378 or:
379 - must_include:
380 regex: '(^|.*/)CMakeLists\.txt$'
381 - must_include:
382 regex: '.*\.cmake$'
383 - must_include:
384 regex: '(^|.*/)Makefile\.am$'
385 - must_include:
386 regex: '(^|.*/)Makefile\.in$'
387 - must_include:
388 regex: '(^|.*/)configure\.ac$'
389 - must_include:
390 regex: '^bootstrap\.sh$'
391 - must_include:
392 regex: '^aclocal$'
393 - must_include:
394 regex: '^aclocal\.m4$'
395 - must_include:
396 regex: '^build/.*'
397 - must_include:
398 regex: '^build-docker/.*'
399 - must_include:
400 regex: '^debian/.*'
401 - must_include:
402 regex: '^appveyor\.yml$'
403 - must_include:
404 regex: '^sonar-project\.properties$'
405 pass:
406 - do: labels
407 labels: ['build and general CI']
408 mode: 'add'
409
410 - when: pull_request.*
Dmytro Shteflyuk2097ed72025-12-17 23:00:37 -0500411 name: Add 'github_actions' label to PR if changeset includes changes to the .github/workflows directory
412 validate:
413 - do: changeset
414 must_include:
415 regex: '.github/workflows/.*'
416 pass:
417 - do: labels
418 labels: ['github_actions']
419 mode: 'add'