Skip to content

Commit 010e83f

Browse files
galnatblinkov
andauthored
KIKIMR-22202 Changes in PR template and docs for contributors with requirements to PR description (#14031)
Co-authored-by: Ivan Blinkov <[email protected]>
1 parent c15923e commit 010e83f

File tree

3 files changed

+99
-2
lines changed

3 files changed

+99
-2
lines changed

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
### Changelog entry <!-- a user-readable short description of changes introduced in this PR -->
1+
### Changelog entry <!-- a user-readable short description of the changes that goes to CHANGELOG.md and Release Notes -->
22

33
...
44

@@ -8,11 +8,12 @@
88
* Experimental feature
99
* Improvement
1010
* Performance improvement
11+
* User Interface
1112
* Bugfix
1213
* Backward incompatible change
1314
* Documentation (changelog entry is not required)
1415
* Not for changelog (changelog entry is not required)
1516

16-
### Additional information
17+
### Description for reviewers <!-- (optional) description for those who read this PR -->
1718

1819
...

.github/workflows/pr_labels.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ jobs:
2727
['* Experimental feature', 'experimental-feature'],
2828
['* Improvement', 'improvement'],
2929
['* Performance improvement', 'performance'],
30+
['* User Interface', 'ui'],
3031
['* Bugfix', 'bugfix'],
3132
['* Backward incompatible change', 'backward-incompatible'],
3233
['* Documentation', 'documentation'],

ydb/docs/ru/core/contributor/suggest-change.md

Lines changed: 95 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -239,6 +239,101 @@ git push
239239

240240
{% endlist %}
241241

242+
### Заполните описание к Pull Request'у {#create_pr_desc}
243+
244+
При создании Pull Request'а описание будет заполнено текстом из шаблона, который нужно отредактировать:
245+
246+
1. **Changelog Category.** В этом блоке нужно оставить одну категорию из списка, которой соответствует изменение (см. [как выбрать категорию](#choose_category)). Есть категории, для которых сообщения из Changelog Entry можно не заполнять, они не будут опубликованы в списке изменений. Остальные категории определяют раздел списка изменений, в который попадёт сообщение.
247+
2. **Changelog Entry.** В этот блок следует добавить описание изменения для конечных пользователей системы (см. [требования](#changelog_entry_req)). Содержимое этого блока будет опубликовано в [списке изменений](../changelog-server.md), если PR будет замержен.
248+
3. **Description for reviewers.** В этот блок можно добавить ссылку на задачу и любую дополнительную информацию, которая будет полезна для ревью вашего изменения. Содержимое этого блока не попадёт в список изменений.
249+
250+
251+
#### Требования к Changelog Entry {#changelog_entry_req}
252+
253+
Сообщение в Changelog Entry должно отвечать следующим требованиям:
254+
255+
- должно быть написано на английском языке;
256+
- содержать не менее 20 символов, если [выбранная категория](#choose_category) имеет раздел в списке изменений;
257+
- опираться на термины, которые используются в [глоссарии](../concepts/glossary.md);
258+
- описывать, что в работе системы изменилось для конечного пользователя;
259+
- соответствовать дополнительным требованиям, определяемым выбранной категорией.
260+
261+
262+
#### Как выбрать Changelog Category {#choose_category}
263+
264+
#|
265+
|| Категория | Раздел в списке изменений | Описание | Требования к сообщению ||
266+
|| Feature
267+
| Функциональность
268+
| Новая функциональность. Иногда выпускается под флагом для сохранения совместимости.
269+
270+
Если вы делаете более одного PR'а в рамках задачи, эту категорию нужно выбрать только для финального коммита, а для промежуточных коммитов — Not for changelog.
271+
| Должно включать:
272+
273+
* ссылку на документацию (если описание превышает два предложения);
274+
* описание того, как включить функциональность, если она выпускается под флагом (если описание превышает одно предложение, его также стоит вынести в документацию).
275+
||
276+
|| Experimental feature
277+
| Функциональность с пометкой «экспериментально»
278+
| Новая функциональность. Всегда выпускается под флагом для сохранения совместимости.
279+
280+
Отличие от предыдущей категории в том, что даже после тестирования мы не можем гарантировать конечному пользователю корректную работу системы с этим изменением.
281+
| Должно включать:
282+
283+
* ссылку на документацию (если описание превышает два предложения);
284+
* описание того, как включить функциональность (если описание превышает одно предложение, его также стоит вынести в документацию).
285+
||
286+
|| Improvement
287+
| Функциональность
288+
| Изменения существующей функциональности.
289+
| Должно включать ссылку на документацию (если описание превышает два предложения).
290+
||
291+
|| Performance improvement
292+
| Производительность
293+
| Изменения в производительности системы — ускорения, оптимизации, улучшения, которые привели к измеряемым изменениям в производительности.
294+
|
295+
||
296+
|| Bugfix
297+
| Исправления ошибок
298+
| Исправления ошибок, с которыми пользователь сталкивался или мог столкнуться в предыдущих релизных версиях.
299+
| Должно содержать:
300+
301+
* ссылку на задачу в GitHub;
302+
* описание условий, при которых пользователь мог столкнуться с проблемой;
303+
* описание проявления проблемы;
304+
* описание способа исправления (необязательно, если логика работы системы принципиально не изменилась).
305+
||
306+
|| User Interface
307+
| {{ ydb-short-name }} UI
308+
| Любые изменения в {{ ydb-short-name }} UI
309+
|
310+
||
311+
|| Backward incompatible changes
312+
| Изменения с потерей обратной совместимости
313+
| Изменения с потерей обратной совместимости с предыдущими релизными версиями.
314+
| Должно содержать:
315+
316+
* инструкцию по обновлению кластера без downtime приложений, которые используют изменяемую функциональность;
317+
* инструкцию по откату обновлений с кластера без downtime приложений.
318+
||
319+
|| Documentation
320+
| -
321+
| Изменения в документации.
322+
| Не будет опубликовано в истории изменений. Сообщение заполнять не нужно.
323+
||
324+
|| Not for Changelog
325+
| -
326+
| Изменения, которые не видны конечному пользователю — рефакторинг кода, тесты, CI/CD, изменения CHANGELOG.md, исправления ошибок в коде новой функциональности (которая не попала в предыдущие релизные версии).
327+
| Не будет опубликовано в истории изменений. Сообщение заполнять не нужно.
328+
||
329+
|#
330+
331+
{% note info %}
332+
333+
Важно выбрать только одну категорию, поэтому не рекомендуется включать в один PR изменения из разных категорий, например, новую функциональность и исправление ошибки. Однако если так случилось, следует выбрать категорию более важного для пользователя изменения, а в блок Changelog Entry добавить описание всех изменений.
334+
335+
{% endnote %}
336+
242337
### Предварительные проверки {#precommit_checks}
243338

244339
Перед мержем изменений выполняются прекоммитные проверки Pull Request'а.

0 commit comments

Comments
 (0)