view xml/ru/docs/contributing_changes.xml @ 2769:16f6fa718be2

Updated TLSv1.3 support notes. Previous notes described some early development snapshot of OpenSSL 1.1.1 with disabled TLSv1.3 by default. It was then enabled in the first alpha. Further, the updated text covers later major releases such as OpenSSL 3.0.
author Sergey Kandaurov <pluknet@nginx.com>
date Thu, 30 Sep 2021 16:29:20 +0300
parents ae1d55e33319
children 0083dce686ec
line wrap: on
line source

<?xml version="1.0"?>

<!--
  Copyright (C) Nginx, Inc.
  -->

<!DOCTYPE article SYSTEM "../../../dtd/article.dtd">

<article name="Внесение изменений"
         link="/ru/docs/contributing_changes.html"
         lang="ru"
         rev="4">

<section id="getting_sources" name="Получение исходного кода">

<para>
Для хранения исходного кода используется
<link url="https://www.mercurial-scm.org">Mercurial</link>.
<link url="http://hg.nginx.org/nginx">Репозиторий</link> можно клонировать
следующей командой:
<programlisting>
hg clone http://hg.nginx.org/nginx
</programlisting>
</para>

</section>


<section id="formatting_changes" name="Оформление изменений">

<para>
Изменения должны быть оформлены согласно
<link doc="../docs/dev/development_guide.xml" id="code_style">стилю</link>,
принятому в nginx.
В случае возникновения затруднений в оформлении
изучите, как оформлен исходный код nginx, и следуйте этому стилю в своём коде.
Изменения скорее будут приняты, если их стиль соответствует окружающему коду.
</para>

<para>
Зафиксируйте изменения, чтобы создать
<link url="https://www.mercurial-scm.org/wiki/ChangeSet">набор изменений</link>
в Mercurial.
Пожалуйста, убедитесь, что адрес
<link url="https://www.mercurial-scm.org/wiki/QuickStart#Setting_a_username">электронной
почты</link> и настоящее имя автора изменения указаны правильно.
</para>

<para>
Сообщение фиксации должно содержать однострочное резюме и подробное описание
после пустой строки.
Желательно, чтобы первая строка была не длиннее 67 символов.
Итоговый набор изменений в виде патча может быть получен с помощью команды
<literal>hg export</literal>:
<programlisting>
# HG changeset patch
# User Filipe Da Silva &lt;username@example.com>
# Date 1368089668 -7200
#      Thu May 09 10:54:28 2013 +0200
# Node ID 2220de0521ca2c0b664a8ea1e201ce1cb90fd7a2
# Parent  822b82191940ef309cd1e6502f94d50d811252a1
Mail: removed surplus ngx_close_connection() call.

It is already called for a peer connection a few lines above.

diff -r 822b82191940 -r 2220de0521ca src/mail/ngx_mail_auth_http_module.c
--- a/src/mail/ngx_mail_auth_http_module.c      Wed May 15 15:04:49 2013 +0400
+++ b/src/mail/ngx_mail_auth_http_module.c      Thu May 09 10:54:28 2013 +0200
@@ -699,7 +699,6 @@ ngx_mail_auth_http_process_headers(ngx_m

                     p = ngx_pnalloc(s->connection->pool, ctx->err.len);
                     if (p == NULL) {
-                        ngx_close_connection(ctx->peer.connection);
                         ngx_destroy_pool(ctx->pool);
                         ngx_mail_session_internal_server_error(s);
                         return;
</programlisting>
</para>

</section>


<section id="before_submitting" name="Перед отправкой">

<para>
Несколько моментов, на которые следует обратить внимание перед
отправкой изменения:
<list type="bullet">

<listitem>
Предлагаемые изменения должны корректно работать на всех
<link doc="../index.xml" id="tested_os_and_platforms">поддерживаемых
платформах</link>.
</listitem>

<listitem>
Постарайтесь разъяснить, почему предлагаемое изменение нужно, и, если возможно,
опишите вариант использования.
</listitem>

<listitem>
Проверка изменений при помощи специального набора тестов позволит убедиться,
что они не вызывают регрессию.
<link url="http://hg.nginx.org/nginx-tests">Репозиторий</link> с тестами
можно клонировать следующей командой:
<programlisting>
hg clone http://hg.nginx.org/nginx-tests
</programlisting>
</listitem>

</list>
</para>

</section>


<section id="submitting_changes" name="Отправка изменений">

<para>
Предлагаемые изменения следует отправить в список рассылки для
<link doc="../support.xml" id="nginx_devel">разработчиков nginx</link>.
Предпочитаемый и удобный метод отправки наборов изменений —
при помощи расширения
<link url="https://www.mercurial-scm.org/wiki/PatchbombExtension">patchbomb</link>.
</para>

</section>


<section id="license" name="Лицензия">

<para>
Отправка изменений подразумевает предоставление проекту права на их
использование под соответствующей <link url="../../LICENSE">лицензией</link>.
</para>

</section>

</article>