Выпуск nginx 1.17.8 и njs 0.3.8

Сформирован выпуск основной ветки nginx 1.17.8, в рамках которой продолжается развитие новых возможностей (в параллельно поддерживаемой стабильной ветке 1.16 вносятся только изменения, связанные с устранением серьёзных ошибок и уязвимостей).

Основные изменения:

  • В директиве grpc_pass добавлена поддержка использования переменной в параметре, определяющем адрес. Если адрес указан в виде доменного имени, имя ищется среди описанных групп серверов и если не найдено, то определяется с помощью resolver’а;
  • Исправлена ошибка при обработке pipelined-запросов по SSL-соединению при которой мог произойти таймаут;
  • Внесены исправления в директиве debug_points при использовании протокола HTTP/2.

Дополнительно можно отметить выпуск njs 0.3.8, интерпретатора языка JavaScript для веб-сервера nginx. Интерпретатор njs реализует стандарты ECMAScript и позволяет расширять возможности nginx по обработке запросов с помощью скриптов в конфигурации. Скрипты могут использоваться в файле конфигурации для определения расширенной логики обработки запросов, формирования конфигурации, динамической генерации ответа, модификации запроса/ответа или быстрого создания заглушек с решением проблем в web-приложениях.

В новом выпуске в модуле nginx ​​добавлена поддержка Promise для r.subrequest и внесены изменения в обработчик свойства r.parent. Также:

  • добавлена ​​поддержка Promise;
  • добавлена ​​начальная поддержка Typed-массивов;
  • добавлена ​​поддержка ArrayBuffer;
  • добавлена ​​начальная поддержка символов;
  • добавлено внешнее управление для JSON.stringify();
  • добавлен Object.is();
  • добавлен Object.setPrototypeOf();
  • введен нулевой оператор объединения;
  • внесено исправление в Object.getPrototypeOf() в соответствии с спецификацией;
  • внесено исправление в Object.prototype.valueOf() в соответствии с спецификацией;
  • внесено исправление в JSON.stringify() с непечатными значениями и функцией заменителя;
  • исправлен оператор «в» согласно спецификации;
  • внесено исправление в Object.defineProperties() в соответствии с с спецификацией;
  • внесено исправление в Object.create() согласно спецификации.
  • внесено исправление в Number.prototype.toString(radix), при включенной Быстрой математики;
  • исправлены свойства экземпляра RegExp();
  • исправлена ​​ошибка импорта при импорте.

Источник: http://www.opennet.ru/opennews/art.shtml?num=52231