Внесение изменений |
Разделы
|
Получение исходного кодаДля хранения исходного кода используется Mercurial. Репозиторий можно клонировать следующей командой: hg clone http://hg.nginx.org/nginx
Оформление измененийИзменения должны быть оформлены согласно принятому в nginx стилю. Оформление не должно зависеть от таких возможностей редактора как подсветка синтаксиса или автоматический перенос строк. Ниже приведены несколько основных правил:
Изучите, как оформлен исходный код nginx, и следуйте этому стилю в своём коде. Изменения скорее будут приняты, если их стиль соответствует окружающему коду. Зафиксируйте изменения, чтобы создать набор изменений в Mercurial. Пожалуйста, убедитесь, что адрес электронной почты и настоящее имя автора изменения указаны правильно.
Сообщение фиксации должно содержать однострочное резюме и подробное описание
после пустой строки.
Желательно, чтобы первая строка была не длиннее 67 символов.
Итоговый набор изменений в виде патча может быть получен с помощью команды
# HG changeset patch # User Filipe Da Silva <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;
Перед отправкойНесколько моментов, на которые следует обратить внимание перед отправкой изменения:
Отправка измененийПредлагаемые изменения следует отправить в список рассылки для разработчиков nginx. Предпочитаемый и удобный метод отправки наборов изменений — при помощи расширения patchbomb. ЛицензияОтправка изменений подразумевает предоставление проекту права на их использование под соответствующей лицензией. |