Сформирован выпуск основной ветки nginx 1.17.8, в рамках которой продолжается развитие новых возможностей (в параллельно поддерживаемой стабильной ветке 1.16 вносятся только изменения, связанные с устранением серьёзных ошибок и уязвимостей).
Основные изменения:
- В директиве grpc_pass добавлена поддержка использования переменной в параметре, определяющем адрес. Если адрес указан в виде доменного имени, имя ищется среди описанных групп серверов, и, если не найдено, то определяется с помощью resolver’а;
- Исправлена ошибка при обработке pipelined-запросов по SSL-соединению, при которой мог произойти таймаут;
- Внесены исправления в директиве debug_points при использовании протокола HTTP/2.
Стоит также отметить, что Trac - средство управления и отслеживания ошибок проекта trac.nginx.org был недавно обновлён до последней стабильной версии Trac 1.4
Дополнительно можно отметить выпуск njs 0.3.8, интерпретатора языка JavaScript для веб-сервера nginx. Интерпретатор njs реализует стандарты ECMAScript и позволяет расширять возможности nginx по обработке запросов с помощью скриптов в конфигурации. Скрипты могут использоваться в файле конфигурации для определения расширенной логики обработки запросов, формирования конфигурации, динамической генерации ответа, модификации запроса/ответа или быстрого создания заглушек с решением проблем в web-приложениях.
В новом выпуске в модуле njs добавлена поддержка Promise для r.subrequest и внесены изменения в обработчик свойства r.parent. Также:
- добавлена начальная поддержка Typed-массивов;
- добавлена поддержка ArrayBuffer;
- добавлена начальная поддержка символов;
- добавлено внешнее управление для JSON.stringify();
- добавлен Object.is();
- добавлен Object.setPrototypeOf();
- введен нулевой оператор объединения (coalescing);
- внесено исправление в Object.getPrototypeOf() в соответствии со спецификацией;
- внесено исправление в Object.prototype.valueOf() в соответствии со спецификацией;
- внесено исправление в JSON.stringify() с непечатными значениями и
функцией заменителя;
- исправлен оператор «in» согласно спецификации;
- внесено исправление в Object.defineProperties() в соответствии со спецификацией;
- внесено исправление в Object.create() согласно спецификации.
- внесено исправление в Number.prototype.toString(radix), при включенном режиме быстрой математики (fast-math mode);
- исправлены свойства экземпляра RegExp();
- исправлена ошибка сегментации при импорте.
|