xref: /unit/docs/changes.xml (revision 2179)
1369Sdefan@nginx.com<?xml version="1.0" ?>
2369Sdefan@nginx.com<!DOCTYPE change_log SYSTEM "changes.dtd" >
3369Sdefan@nginx.com
4369Sdefan@nginx.com
5369Sdefan@nginx.com<change_log title="unit">
6369Sdefan@nginx.com
7369Sdefan@nginx.com
82029SN/A<changes apply="unit-php
92029SN/A                unit-python unit-python2.7
102029SN/A                unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7
112029SN/A                unit-python3.8 unit-python3.9 unit-python3.10
122029SN/A                unit-go
132029SN/A                unit-perl
142029SN/A                unit-ruby
152029SN/A                unit-jsc-common unit-jsc8 unit-jsc10 unit-jsc11 unit-jsc13
162029SN/A                unit-jsc14 unit-jsc15 unit-jsc16 unit-jsc17 unit-jsc18"
172129Szelenkov@nginx.com         ver="1.28.0" rev="1"
182129Szelenkov@nginx.com         date="" time=""
192135Sthresh@nginx.com         packager="Nginx Packaging &lt;nginx-packaging@f5.com&gt;">
202129Szelenkov@nginx.com
212129Szelenkov@nginx.com<change>
222129Szelenkov@nginx.com<para>
232129Szelenkov@nginx.comNGINX Unit updated to 1.28.0.
242129Szelenkov@nginx.com</para>
252129Szelenkov@nginx.com</change>
262129Szelenkov@nginx.com
272129Szelenkov@nginx.com</changes>
282129Szelenkov@nginx.com
292129Szelenkov@nginx.com
302129Szelenkov@nginx.com<changes apply="unit" ver="1.28.0" rev="1"
312129Szelenkov@nginx.com         date="" time=""
322135Sthresh@nginx.com         packager="Nginx Packaging &lt;nginx-packaging@f5.com&gt;">
332129Szelenkov@nginx.com
342173Salx.manpages@gmail.com<change type="change">
352173Salx.manpages@gmail.com<para>
362173Salx.manpages@gmail.comincreased the applications' startup timeout.
372173Salx.manpages@gmail.com</para>
382173Salx.manpages@gmail.com</change>
392173Salx.manpages@gmail.com
402133Sz.hong@f5.com<change type="feature">
412133Sz.hong@f5.com<para>
42*2179Salx.manpages@gmail.comsupporting abstract UNIX sockets.
43*2179Salx.manpages@gmail.com</para>
44*2179Salx.manpages@gmail.com</change>
45*2179Salx.manpages@gmail.com
46*2179Salx.manpages@gmail.com<change type="feature">
47*2179Salx.manpages@gmail.com<para>
482161Salx.manpages@gmail.comsupporting UNIX sockets in address matching.
492161Salx.manpages@gmail.com</para>
502161Salx.manpages@gmail.com</change>
512161Salx.manpages@gmail.com
522161Salx.manpages@gmail.com<change type="feature">
532161Salx.manpages@gmail.com<para>
542133Sz.hong@f5.comforwarded header to replace client address and protocol.
552133Sz.hong@f5.com</para>
562133Sz.hong@f5.com</change>
572133Sz.hong@f5.com
582147Sz.hong@f5.com<change type="feature">
592147Sz.hong@f5.com<para>
602147Sz.hong@f5.comability to get dynamic variables.
612147Sz.hong@f5.com</para>
622147Sz.hong@f5.com</change>
632147Sz.hong@f5.com
642149Sz.hong@f5.com<change type="feature">
652149Sz.hong@f5.com<para>
662149Sz.hong@f5.commore http variables support.
672149Sz.hong@f5.com</para>
682149Sz.hong@f5.com</change>
692149Sz.hong@f5.com
702161Salx.manpages@gmail.com<change type="feature">
712161Salx.manpages@gmail.com<para>
722161Salx.manpages@gmail.comadded a new variable, $dollar, that translates to a literal "$" during
732162Salx.manpages@gmail.comvariable substitution.
742161Salx.manpages@gmail.com</para>
752161Salx.manpages@gmail.com</change>
762161Salx.manpages@gmail.com
772166Sz.hong@f5.com<change type="feature">
782166Sz.hong@f5.com<para>
792166Sz.hong@f5.comcustomizable access log format.
802166Sz.hong@f5.com</para>
812166Sz.hong@f5.com</change>
822166Sz.hong@f5.com
832137Salx.manpages@gmail.com<change type="bugfix">
842137Salx.manpages@gmail.com<para>
852137Salx.manpages@gmail.coman index file that didn't contain a file extension was incorrectly
862137Salx.manpages@gmail.comhandled, and caused a use-after-free bug.
872137Salx.manpages@gmail.com</para>
882137Salx.manpages@gmail.com</change>
892137Salx.manpages@gmail.com
902163Salx.manpages@gmail.com<change type="bugfix">
912163Salx.manpages@gmail.com<para>
922163Salx.manpages@gmail.comforce SCRIPT_NAME in Ruby to always be an empty string.
932163Salx.manpages@gmail.com</para>
942163Salx.manpages@gmail.com</change>
952163Salx.manpages@gmail.com
962164Sz.hong@f5.com<change type="bugfix">
972164Sz.hong@f5.com<para>
982164Sz.hong@f5.comthe ruby application process could crash if it's interrupted by SIGTERM signal.
992164Sz.hong@f5.com</para>
1002164Sz.hong@f5.com</change>
1012164Sz.hong@f5.com
1022174Smax.romanov@gmail.com<change type="bugfix">
1032174Smax.romanov@gmail.com<para>
1042174Smax.romanov@gmail.comwhen isolated PID numbers reach the prototype process host PID,
1052174Smax.romanov@gmail.comthe prototype crashed.
1062174Smax.romanov@gmail.com</para>
1072174Smax.romanov@gmail.com</change>
1082174Smax.romanov@gmail.com
1092129Szelenkov@nginx.com</changes>
1102129Szelenkov@nginx.com
1112129Szelenkov@nginx.com
1122129Szelenkov@nginx.com<changes apply="unit-php
1132129Szelenkov@nginx.com                unit-python unit-python2.7
1142129Szelenkov@nginx.com                unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7
1152129Szelenkov@nginx.com                unit-python3.8 unit-python3.9 unit-python3.10
1162129Szelenkov@nginx.com                unit-go
1172129Szelenkov@nginx.com                unit-perl
1182129Szelenkov@nginx.com                unit-ruby
1192129Szelenkov@nginx.com                unit-jsc-common unit-jsc8 unit-jsc10 unit-jsc11 unit-jsc13
1202129Szelenkov@nginx.com                unit-jsc14 unit-jsc15 unit-jsc16 unit-jsc17 unit-jsc18"
1212012Svbart@nginx.com         ver="1.27.0" rev="1"
1222127Szelenkov@nginx.com         date="2022-06-02" time="18:00:00 +0300"
1232012Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
1242012Svbart@nginx.com
1252012Svbart@nginx.com<change>
1262012Svbart@nginx.com<para>
1272012Svbart@nginx.comNGINX Unit updated to 1.27.0.
1282012Svbart@nginx.com</para>
1292012Svbart@nginx.com</change>
1302012Svbart@nginx.com
1312012Svbart@nginx.com</changes>
1322012Svbart@nginx.com
1332012Svbart@nginx.com
1342012Svbart@nginx.com<changes apply="unit" ver="1.27.0" rev="1"
1352127Szelenkov@nginx.com         date="2022-06-02" time="18:00:00 +0300"
1362012Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
1372012Svbart@nginx.com
1382072Sz.hong@f5.com<change type="feature">
1392072Sz.hong@f5.com<para>
1402108Salx.manpages@gmail.comability to specify a custom index file name when serving static files.
1412108Salx.manpages@gmail.com</para>
1422108Salx.manpages@gmail.com</change>
1432108Salx.manpages@gmail.com
1442108Salx.manpages@gmail.com<change type="feature">
1452108Salx.manpages@gmail.com<para>
1462081Salx.manpages@gmail.comvariables support in the "location" option of the "return" action.
1472081Salx.manpages@gmail.com</para>
1482081Salx.manpages@gmail.com</change>
1492081Salx.manpages@gmail.com
1502081Salx.manpages@gmail.com<change type="feature">
1512081Salx.manpages@gmail.com<para>
1522113Sartem.konev@nginx.comsupport empty strings in the "location" option of the "return" action.
1532113Sartem.konev@nginx.com</para>
1542113Sartem.konev@nginx.com</change>
1552113Sartem.konev@nginx.com
1562113Sartem.konev@nginx.com<change type="feature">
1572113Sartem.konev@nginx.com<para>
1582113Sartem.konev@nginx.comadded a new variable, $request_uri, that includes both the path and the query
1592113Sartem.konev@nginx.comparts as per RFC 3986, sections 3-4.
1602113Sartem.konev@nginx.com</para>
1612113Sartem.konev@nginx.com</change>
1622113Sartem.konev@nginx.com
1632113Sartem.konev@nginx.com<change type="feature">
1642113Sartem.konev@nginx.com<para>
1652113Sartem.konev@nginx.comRuby Rack environment parameter "SCRIPT_NAME" support.
1662110Salx.manpages@gmail.com</para>
1672110Salx.manpages@gmail.com</change>
1682110Salx.manpages@gmail.com
1692110Salx.manpages@gmail.com<change type="feature">
1702110Salx.manpages@gmail.com<para>
1712072Sz.hong@f5.comcompatibility with GCC 12.
1722072Sz.hong@f5.com</para>
1732072Sz.hong@f5.com</change>
1742072Sz.hong@f5.com
1752060Smax.romanov@nginx.com<change type="bugfix">
1762060Smax.romanov@nginx.com<para>
1772093Sz.hong@f5.comRuby Sinatra applications don't work without custom logging.
1782093Sz.hong@f5.com</para>
1792093Sz.hong@f5.com</change>
1802093Sz.hong@f5.com
1812093Sz.hong@f5.com<change type="bugfix">
1822093Sz.hong@f5.com<para>
1832113Sartem.konev@nginx.comthe controller process could crash when a chain of more than four
1842069Sz.hong@f5.comcertificates was uploaded.
1852069Sz.hong@f5.com</para>
1862069Sz.hong@f5.com</change>
1872069Sz.hong@f5.com
1882069Sz.hong@f5.com<change type="bugfix">
1892069Sz.hong@f5.com<para>
1902060Smax.romanov@nginx.comsome Perl applications failed to process the request body, notably with Plack.
1912060Smax.romanov@nginx.com</para>
1922060Smax.romanov@nginx.com</change>
1932060Smax.romanov@nginx.com
1942061Smax.romanov@nginx.com<change type="bugfix">
1952061Smax.romanov@nginx.com<para>
1962061Smax.romanov@nginx.comsome Spring Boot applications failed to start, notably with Grails.
1972061Smax.romanov@nginx.com</para>
1982061Smax.romanov@nginx.com</change>
1992061Smax.romanov@nginx.com
2002067Smax.romanov@nginx.com<change type="bugfix">
2012067Smax.romanov@nginx.com<para>
2022067Smax.romanov@nginx.comincorrect Python protocol auto detection (ASGI or WSGI) for native callable
2032067Smax.romanov@nginx.comobject, notably with Falcon.
2042067Smax.romanov@nginx.com</para>
2052067Smax.romanov@nginx.com</change>
2062067Smax.romanov@nginx.com
2072117Szelenkov@nginx.com<change type="bugfix">
2082117Szelenkov@nginx.com<para>
2092117Szelenkov@nginx.comECMAScript modules did not work with the recent Node.js versions.
2102117Szelenkov@nginx.com</para>
2112117Szelenkov@nginx.com</change>
2122117Szelenkov@nginx.com
2132050Svbart@nginx.com</changes>
2142050Svbart@nginx.com
2152050Svbart@nginx.com
2162050Svbart@nginx.com<changes apply="unit-php
2172050Svbart@nginx.com                unit-python unit-python2.7
2182050Svbart@nginx.com                unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7
2192050Svbart@nginx.com                unit-python3.8 unit-python3.9 unit-python3.10
2202050Svbart@nginx.com                unit-go
2212050Svbart@nginx.com                unit-perl
2222050Svbart@nginx.com                unit-ruby
2232050Svbart@nginx.com                unit-jsc-common unit-jsc8 unit-jsc10 unit-jsc11 unit-jsc13
2242050Svbart@nginx.com                unit-jsc14 unit-jsc15 unit-jsc16 unit-jsc17 unit-jsc18"
2252029SN/A         ver="1.26.1" rev="1"
2262045SN/A         date="2021-12-02" time="18:00:00 +0300"
2272029SN/A         packager="Andrei Belov &lt;defan@nginx.com&gt;">
2282029SN/A
2292029SN/A<change>
2302029SN/A<para>
2312029SN/ANGINX Unit updated to 1.26.1.
2322029SN/A</para>
2332029SN/A</change>
2342029SN/A
2352029SN/A</changes>
2362029SN/A
2372029SN/A
2382029SN/A<changes apply="unit" ver="1.26.1" rev="1"
2392045SN/A         date="2021-12-02" time="18:00:00 +0300"
2402029SN/A         packager="Andrei Belov &lt;defan@nginx.com&gt;">
2412029SN/A
2422033SN/A<change type="bugfix">
2432033SN/A<para>
2442044SN/Aoccasionally, the Unit daemon was unable to fully terminate; the bug had
2452044SN/Aappeared in 1.26.0.
2462033SN/A</para>
2472033SN/A</change>
2482033SN/A
2492034SN/A<change type="bugfix">
2502034SN/A<para>
2512044SN/Aa prototype process could crash on an application process exit; the bug had
2522034SN/Aappeared in 1.26.0.
2532034SN/A</para>
2542034SN/A</change>
2552034SN/A
2562035SN/A<change type="bugfix">
2572035SN/A<para>
2582044SN/Athe router process crashed on reconfiguration if "access_log" was configured
2592044SN/Awithout listeners.
2602044SN/A</para>
2612044SN/A</change>
2622044SN/A
2632044SN/A<change type="bugfix">
2642044SN/A<para>
2652035SN/Aa segmentation fault occurred in the PHP module if chdir() or
2662035SN/Afastcgi_finish_request() was called in the OPcache preloading script.
2672035SN/A</para>
2682035SN/A</change>
2692035SN/A
2702040SN/A<change type="bugfix">
2712040SN/A<para>
2722041SN/Afatal errors on DragonFly BSD; the bug had appeared in 1.26.0.
2732041SN/A</para>
2742041SN/A</change>
2752041SN/A
2762029SN/A</changes>
2772029SN/A
2782029SN/A
2791973Sdefan@nginx.com<changes apply="unit-jsc18" ver="1.26.0" rev="1"
2802007Svbart@nginx.com         date="2021-11-18" time="18:00:00 +0300"
2811973Sdefan@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
2821973Sdefan@nginx.com
2831973Sdefan@nginx.com<change>
2841973Sdefan@nginx.com<para>
2851973Sdefan@nginx.comInitial release of Java 18 module for NGINX Unit.
2861973Sdefan@nginx.com</para>
2871973Sdefan@nginx.com</change>
2881973Sdefan@nginx.com
2891973Sdefan@nginx.com</changes>
2901973Sdefan@nginx.com
2911973Sdefan@nginx.com
2921973Sdefan@nginx.com<changes apply="unit-python3.10" ver="1.26.0" rev="1"
2932007Svbart@nginx.com         date="2021-11-18" time="18:00:00 +0300"
2941973Sdefan@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
2951973Sdefan@nginx.com
2961973Sdefan@nginx.com<change>
2971973Sdefan@nginx.com<para>
2981973Sdefan@nginx.comInitial release of Python 3.10 module for NGINX Unit.
2991973Sdefan@nginx.com</para>
3001973Sdefan@nginx.com</change>
3011973Sdefan@nginx.com
3021973Sdefan@nginx.com</changes>
3031973Sdefan@nginx.com
3041973Sdefan@nginx.com
3051896Svbart@nginx.com<changes apply="unit-php
3061896Svbart@nginx.com                unit-python unit-python2.7
3071896Svbart@nginx.com                unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7
3081896Svbart@nginx.com                unit-python3.8 unit-python3.9
3091896Svbart@nginx.com                unit-go
3101896Svbart@nginx.com                unit-perl
3111896Svbart@nginx.com                unit-ruby
3121896Svbart@nginx.com                unit-jsc-common unit-jsc8 unit-jsc10 unit-jsc11 unit-jsc13
3131896Svbart@nginx.com                unit-jsc14 unit-jsc15 unit-jsc16 unit-jsc17"
3141951Svbart@nginx.com         ver="1.26.0" rev="1"
3152007Svbart@nginx.com         date="2021-11-18" time="18:00:00 +0300"
3161951Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
3171951Svbart@nginx.com
3181951Svbart@nginx.com<change>
3191951Svbart@nginx.com<para>
3201951Svbart@nginx.comNGINX Unit updated to 1.26.0.
3211951Svbart@nginx.com</para>
3221951Svbart@nginx.com</change>
3231951Svbart@nginx.com
3241951Svbart@nginx.com</changes>
3251951Svbart@nginx.com
3261951Svbart@nginx.com
3271951Svbart@nginx.com<changes apply="unit" ver="1.26.0" rev="1"
3282007Svbart@nginx.com         date="2021-11-18" time="18:00:00 +0300"
3291951Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
3301951Svbart@nginx.com
3311960Sz.hong@f5.com<change type="change">
3321960Sz.hong@f5.com<para>
3331960Sz.hong@f5.comthe "share" option now specifies the entire path to the files it serves,
3341960Sz.hong@f5.comrather than a document root directory to be prepended to the request URI.
3351960Sz.hong@f5.com</para>
3361960Sz.hong@f5.com</change>
3371960Sz.hong@f5.com
3381960Sz.hong@f5.com<change type="feature">
3391960Sz.hong@f5.com<para>
3402006Svbart@nginx.comautomatic adjustment of existing configurations to the new "share" behavior
3412006Svbart@nginx.comwhen updating from previous versions.
3422006Svbart@nginx.com</para>
3432006Svbart@nginx.com</change>
3442006Svbart@nginx.com
3452006Svbart@nginx.com<change type="feature">
3462006Svbart@nginx.com<para>
3471960Sz.hong@f5.comvariables support in the "share" option.
3481960Sz.hong@f5.com</para>
3491960Sz.hong@f5.com</change>
3501960Sz.hong@f5.com
3511959Sz.hong@f5.com<change type="feature">
3521959Sz.hong@f5.com<para>
3531961Sz.hong@f5.commultiple paths in the "share" option.
3541961Sz.hong@f5.com</para>
3551961Sz.hong@f5.com</change>
3561961Sz.hong@f5.com
3571961Sz.hong@f5.com<change type="feature">
3581961Sz.hong@f5.com<para>
3591959Sz.hong@f5.comvariables support in the "chroot" option.
3601959Sz.hong@f5.com</para>
3611959Sz.hong@f5.com</change>
3621959Sz.hong@f5.com
3631969Sz.hong@f5.com<change type="feature">
3641969Sz.hong@f5.com<para>
3652006Svbart@nginx.comPHP opcache is shared between application processes.
3661969Sz.hong@f5.com</para>
3671969Sz.hong@f5.com</change>
3681969Sz.hong@f5.com
3691991Sz.hong@f5.com<change type="feature">
3701991Sz.hong@f5.com<para>
3711991Sz.hong@f5.comrequest routing by the query string.
3721991Sz.hong@f5.com</para>
3731991Sz.hong@f5.com</change>
3741991Sz.hong@f5.com
3751955Smax.romanov@nginx.com<change type="bugfix">
3761955Smax.romanov@nginx.com<para>
3772006Svbart@nginx.comthe router and app processes could crash when the requests limit was reached
3782006Svbart@nginx.comby asynchronous or multithreaded apps.
3791955Smax.romanov@nginx.com</para>
3801955Smax.romanov@nginx.com</change>
3811955Smax.romanov@nginx.com
3821956Smax.romanov@nginx.com<change type="bugfix">
3831956Smax.romanov@nginx.com<para>
3841956Smax.romanov@nginx.comestablished WebSocket connections could stop reading frames from the client
3851956Smax.romanov@nginx.comafter the corresponding listener had been reconfigured.
3861956Smax.romanov@nginx.com</para>
3871956Smax.romanov@nginx.com</change>
3881956Smax.romanov@nginx.com
3891992Smax.romanov@nginx.com<change type="bugfix">
3901992Smax.romanov@nginx.com<para>
3912006Svbart@nginx.comfixed building with glibc 2.34, notably Fedora 35.
3921992Smax.romanov@nginx.com</para>
3931992Smax.romanov@nginx.com</change>
3941992Smax.romanov@nginx.com
3951951Svbart@nginx.com</changes>
3961951Svbart@nginx.com
3971951Svbart@nginx.com
3981951Svbart@nginx.com<changes apply="unit-php
3991951Svbart@nginx.com                unit-python unit-python2.7
4001951Svbart@nginx.com                unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7
4011951Svbart@nginx.com                unit-python3.8 unit-python3.9
4021951Svbart@nginx.com                unit-go
4031951Svbart@nginx.com                unit-perl
4041951Svbart@nginx.com                unit-ruby
4051951Svbart@nginx.com                unit-jsc-common unit-jsc8 unit-jsc10 unit-jsc11 unit-jsc13
4061951Svbart@nginx.com                unit-jsc14 unit-jsc15 unit-jsc16 unit-jsc17"
4071896Svbart@nginx.com         ver="1.25.0" rev="1"
4081945Svbart@nginx.com         date="2021-08-19" time="18:00:00 +0300"
4091896Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
4101896Svbart@nginx.com
4111896Svbart@nginx.com<change>
4121896Svbart@nginx.com<para>
4131896Svbart@nginx.comNGINX Unit updated to 1.25.0.
4141896Svbart@nginx.com</para>
4151896Svbart@nginx.com</change>
4161896Svbart@nginx.com
4171896Svbart@nginx.com</changes>
4181896Svbart@nginx.com
4191896Svbart@nginx.com
4201896Svbart@nginx.com<changes apply="unit" ver="1.25.0" rev="1"
4211945Svbart@nginx.com         date="2021-08-19" time="18:00:00 +0300"
4221896Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
4231896Svbart@nginx.com
4241910So.canty@f5.com<change type="feature">
4251910So.canty@f5.com<para>
4261944Svbart@nginx.comclient IP address replacement from a specified HTTP header field.
4271942Sa.suvorov@f5.com</para>
4281942Sa.suvorov@f5.com</change>
4291942Sa.suvorov@f5.com
4301942Sa.suvorov@f5.com<change type="feature">
4311942Sa.suvorov@f5.com<para>
4321920Sa.suvorov@f5.comTLS sessions cache.
4331920Sa.suvorov@f5.com</para>
4341920Sa.suvorov@f5.com</change>
4351920Sa.suvorov@f5.com
4361920Sa.suvorov@f5.com<change type="feature">
4371920Sa.suvorov@f5.com<para>
4381944Svbart@nginx.comTLS session tickets.
4391910So.canty@f5.com</para>
4401910So.canty@f5.com</change>
4411910So.canty@f5.com
4421926Smax.romanov@nginx.com<change type="feature">
4431926Smax.romanov@nginx.com<para>
4441926Smax.romanov@nginx.comapplication restart control.
4451926Smax.romanov@nginx.com</para>
4461926Smax.romanov@nginx.com</change>
4471926Smax.romanov@nginx.com
4481936So.canty@f5.com<change type="feature">
4491936So.canty@f5.com<para>
4501944Svbart@nginx.comprocess and thread lifecycle hooks in Ruby.
4511936So.canty@f5.com</para>
4521936So.canty@f5.com</change>
4531936So.canty@f5.com
4541907Smax.romanov@nginx.com<change type="bugfix">
4551907Smax.romanov@nginx.com<para>
4561944Svbart@nginx.comthe router process could crash on TLS connection open when multiple listeners
4571944Svbart@nginx.comwith TLS certificates were configured; the bug had appeared in 1.23.0.
4581921Sa.suvorov@f5.com</para>
4591921Sa.suvorov@f5.com</change>
4601921Sa.suvorov@f5.com
4611921Sa.suvorov@f5.com<change type="bugfix">
4621921Sa.suvorov@f5.com<para>
4631944Svbart@nginx.comTLS connections were rejected for configurations with multiple certificate
4641944Svbart@nginx.combundles in a listener if the client did not use SNI.
4651907Smax.romanov@nginx.com</para>
4661907Smax.romanov@nginx.com</change>
4671907Smax.romanov@nginx.com
4681907Smax.romanov@nginx.com<change type="bugfix">
4691907Smax.romanov@nginx.com<para>
4701950Sartem.konev@nginx.comthe router process could crash with frequent multithreaded application
4711915Smax.romanov@nginx.comreconfiguration.
4721915Smax.romanov@nginx.com</para>
4731915Smax.romanov@nginx.com</change>
4741915Smax.romanov@nginx.com
4751915Smax.romanov@nginx.com<change type="bugfix">
4761915Smax.romanov@nginx.com<para>
4771944Svbart@nginx.comcompatibility issues with some Python ASGI apps, notably based on the Starlette
4781944Svbart@nginx.comframework.
4791944Svbart@nginx.com</para>
4801944Svbart@nginx.com</change>
4811944Svbart@nginx.com
4821944Svbart@nginx.com<change type="bugfix">
4831944Svbart@nginx.com<para>
4841944Svbart@nginx.coma descriptor and memory leak occurred in the router process when an app process
4851944Svbart@nginx.comstopped or crashed.
4861907Smax.romanov@nginx.com</para>
4871907Smax.romanov@nginx.com</change>
4881907Smax.romanov@nginx.com
4891909So.canty@f5.com<change type="bugfix">
4901909So.canty@f5.com<para>
4911909So.canty@f5.comthe controller or router process could crash if the configuration contained
4921909So.canty@f5.coma full-form IPv6 in a listener address.
4931909So.canty@f5.com</para>
4941909So.canty@f5.com</change>
4951909So.canty@f5.com
4961916Smax.romanov@nginx.com<change type="bugfix">
4971916Smax.romanov@nginx.com<para>
4981929Sz.hong@f5.comthe router process crashed when a request was passed to an empty "routes"
4991929Sz.hong@f5.comor "upstreams" using a variable "pass" option.
5001929Sz.hong@f5.com</para>
5011929Sz.hong@f5.com</change>
5021929Sz.hong@f5.com
5031930So.canty@f5.com<change type="bugfix">
5041930So.canty@f5.com<para>
5051944Svbart@nginx.comthe router process crashed while matching a request to an empty array of source
5061944Svbart@nginx.comor destination address patterns.
5071930So.canty@f5.com</para>
5081930So.canty@f5.com</change>
5091930So.canty@f5.com
5101896Svbart@nginx.com</changes>
5111896Svbart@nginx.com
5121896Svbart@nginx.com
5131887Sdefan@nginx.com<changes apply="unit-jsc17" ver="1.24.0" rev="1"
5141891Svbart@nginx.com         date="2021-05-27" time="18:00:00 +0300"
5151887Sdefan@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
5161887Sdefan@nginx.com
5171887Sdefan@nginx.com<change>
5181887Sdefan@nginx.com<para>
5191887Sdefan@nginx.comInitial release of Java 17 module for NGINX Unit.
5201887Sdefan@nginx.com</para>
5211887Sdefan@nginx.com</change>
5221887Sdefan@nginx.com
5231887Sdefan@nginx.com</changes>
5241887Sdefan@nginx.com
5251887Sdefan@nginx.com
5261887Sdefan@nginx.com<changes apply="unit-jsc16" ver="1.24.0" rev="1"
5271891Svbart@nginx.com         date="2021-05-27" time="18:00:00 +0300"
5281887Sdefan@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
5291887Sdefan@nginx.com
5301887Sdefan@nginx.com<change>
5311887Sdefan@nginx.com<para>
5321887Sdefan@nginx.comInitial release of Java 16 module for NGINX Unit.
5331887Sdefan@nginx.com</para>
5341887Sdefan@nginx.com</change>
5351887Sdefan@nginx.com
5361887Sdefan@nginx.com</changes>
5371887Sdefan@nginx.com
5381887Sdefan@nginx.com
5391834Svbart@nginx.com<changes apply="unit-php
5401834Svbart@nginx.com                unit-python unit-python2.7
5411834Svbart@nginx.com                unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7
5421834Svbart@nginx.com                unit-python3.8 unit-python3.9
5431834Svbart@nginx.com                unit-go
5441834Svbart@nginx.com                unit-perl
5451834Svbart@nginx.com                unit-ruby
5461834Svbart@nginx.com                unit-jsc-common unit-jsc8 unit-jsc10 unit-jsc11 unit-jsc13
5471834Svbart@nginx.com                unit-jsc14 unit-jsc15"
5481839Svbart@nginx.com         ver="1.24.0" rev="1"
5491891Svbart@nginx.com         date="2021-05-27" time="18:00:00 +0300"
5501839Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
5511839Svbart@nginx.com
5521839Svbart@nginx.com<change>
5531839Svbart@nginx.com<para>
5541839Svbart@nginx.comNGINX Unit updated to 1.24.0.
5551839Svbart@nginx.com</para>
5561839Svbart@nginx.com</change>
5571839Svbart@nginx.com
5581839Svbart@nginx.com</changes>
5591839Svbart@nginx.com
5601839Svbart@nginx.com
5611839Svbart@nginx.com<changes apply="unit" ver="1.24.0" rev="1"
5621891Svbart@nginx.com         date="2021-05-27" time="18:00:00 +0300"
5631839Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
5641839Svbart@nginx.com
5651882So.canty@f5.com<change type="change">
5661882So.canty@f5.com<para>
5671882So.canty@f5.comPHP added to the default MIME type list.
5681882So.canty@f5.com</para>
5691882So.canty@f5.com</change>
5701882So.canty@f5.com
5711855Sz.hong@f5.com<change type="feature">
5721855Sz.hong@f5.com<para>
5731885Sa.suvorov@f5.comarbitrary configuration of TLS connections via OpenSSL commands.
5741885Sa.suvorov@f5.com</para>
5751885Sa.suvorov@f5.com</change>
5761885Sa.suvorov@f5.com
5771885Sa.suvorov@f5.com<change type="feature">
5781885Sa.suvorov@f5.com<para>
5791890Svbart@nginx.comthe ability to limit static file serving by MIME types.
5801890Svbart@nginx.com</para>
5811890Svbart@nginx.com</change>
5821890Svbart@nginx.com
5831890Svbart@nginx.com<change type="feature">
5841890Svbart@nginx.com<para>
5851890Svbart@nginx.comsupport for chrooting, rejecting symlinks, and rejecting mount
5861890Svbart@nginx.compoint traversal on a per-request basis when serving static files.
5871872So.canty@f5.com</para>
5881872So.canty@f5.com</change>
5891872So.canty@f5.com
5901872So.canty@f5.com<change type="feature">
5911872So.canty@f5.com<para>
5921889Sartem.konev@nginx.coma loader for automatically overriding the "http" and "websocket" modules in
5931889Sartem.konev@nginx.comNode.js.
5941865So.canty@f5.com</para>
5951865So.canty@f5.com</change>
5961865So.canty@f5.com
5971865So.canty@f5.com<change type="feature">
5981865So.canty@f5.com<para>
5991890Svbart@nginx.commultiple "targets" in Python applications.
6001855Sz.hong@f5.com</para>
6011855Sz.hong@f5.com</change>
6021855Sz.hong@f5.com
6031870So.canty@f5.com<change type="feature">
6041870So.canty@f5.com<para>
6051870So.canty@f5.comcompatibility with Ruby 3.0.
6061870So.canty@f5.com</para>
6071870So.canty@f5.com</change>
6081870So.canty@f5.com
6091861Svbart@nginx.com<change type="bugfix">
6101861Svbart@nginx.com<para>
6111889Sartem.konev@nginx.comthe router process could crash while closing a TLS connection.
6121884Sa.suvorov@f5.com</para>
6131884Sa.suvorov@f5.com</change>
6141884Sa.suvorov@f5.com
6151884Sa.suvorov@f5.com<change type="bugfix">
6161884Sa.suvorov@f5.com<para>
6171861Svbart@nginx.coma segmentation fault might have occurred in the PHP module if
6181861Svbart@nginx.comfastcgi_finish_request() was used with the "auto_globals_jit" option enabled.
6191861Svbart@nginx.com</para>
6201861Svbart@nginx.com</change>
6211861Svbart@nginx.com
6221839Svbart@nginx.com</changes>
6231839Svbart@nginx.com
6241839Svbart@nginx.com
6251839Svbart@nginx.com<changes apply="unit-php
6261839Svbart@nginx.com                unit-python unit-python2.7
6271839Svbart@nginx.com                unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7
6281839Svbart@nginx.com                unit-python3.8 unit-python3.9
6291839Svbart@nginx.com                unit-go
6301839Svbart@nginx.com                unit-perl
6311839Svbart@nginx.com                unit-ruby
6321839Svbart@nginx.com                unit-jsc-common unit-jsc8 unit-jsc10 unit-jsc11 unit-jsc13
6331839Svbart@nginx.com                unit-jsc14 unit-jsc15"
6341834Svbart@nginx.com         ver="1.23.0" rev="1"
6351834Svbart@nginx.com         date="2021-03-25" time="18:00:00 +0300"
6361834Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
6371834Svbart@nginx.com
6381834Svbart@nginx.com<change>
6391834Svbart@nginx.com<para>
6401834Svbart@nginx.comNGINX Unit updated to 1.23.0.
6411834Svbart@nginx.com</para>
6421834Svbart@nginx.com</change>
6431834Svbart@nginx.com
6441834Svbart@nginx.com</changes>
6451834Svbart@nginx.com
6461834Svbart@nginx.com
6471806Svbart@nginx.com<changes apply="unit" ver="1.23.0" rev="1"
6481834Svbart@nginx.com         date="2021-03-25" time="18:00:00 +0300"
6491806Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
6501806Svbart@nginx.com
6511825Sthresh@nginx.com<change type="feature">
6521825Sthresh@nginx.com<para>
6531833Sartem.konev@nginx.comsupport for multiple certificate bundles on a listener via the Server Name
6541828Sa.suvorov@f5.comIndication (SNI) TLS extension.
6551828Sa.suvorov@f5.com</para>
6561828Sa.suvorov@f5.com</change>
6571828Sa.suvorov@f5.com
6581828Sa.suvorov@f5.com<change type="feature">
6591828Sa.suvorov@f5.com<para>
6601833Sartem.konev@nginx.com"--mandir" ./configure option to specify the directory for man page
6611833Sartem.konev@nginx.cominstallation.
6621825Sthresh@nginx.com</para>
6631825Sthresh@nginx.com</change>
6641825Sthresh@nginx.com
6651811Smax.romanov@nginx.com<change type="bugfix">
6661811Smax.romanov@nginx.com<para>
6671812Svbart@nginx.comthe router process could crash on premature TLS connection close; the bug had
6681812Svbart@nginx.comappeared in 1.17.0.
6691812Svbart@nginx.com</para>
6701812Svbart@nginx.com</change>
6711812Svbart@nginx.com
6721812Svbart@nginx.com<change type="bugfix">
6731812Svbart@nginx.com<para>
6741833Sartem.konev@nginx.coma connection leak occurred on premature TLS connection close; the bug had
6751812Svbart@nginx.comappeared in 1.6.
6761812Svbart@nginx.com</para>
6771812Svbart@nginx.com</change>
6781812Svbart@nginx.com
6791812Svbart@nginx.com<change type="bugfix">
6801812Svbart@nginx.com<para>
6811833Sartem.konev@nginx.coma descriptor and memory leak occurred in the router process when processing
6821832Smax.romanov@nginx.comsmall WebSocket frames from a client; the bug had appeared in 1.19.0.
6831832Smax.romanov@nginx.com</para>
6841832Smax.romanov@nginx.com</change>
6851832Smax.romanov@nginx.com
6861832Smax.romanov@nginx.com<change type="bugfix">
6871832Smax.romanov@nginx.com<para>
6881833Sartem.konev@nginx.coma descriptor leak occurred in the router process when removing or
6891811Smax.romanov@nginx.comreconfiguring an application; the bug had appeared in 1.19.0.
6901811Smax.romanov@nginx.com</para>
6911811Smax.romanov@nginx.com</change>
6921806Svbart@nginx.com
6931813Svbart@nginx.com<change type="bugfix">
6941813Svbart@nginx.com<para>
6951813Svbart@nginx.compersistent storage of certificates might've not worked with some filesystems in
6961813Svbart@nginx.comLinux, and all uploaded certificate bundles were forgotten after restart.
6971813Svbart@nginx.com</para>
6981813Svbart@nginx.com</change>
6991813Svbart@nginx.com
7001814Svbart@nginx.com<change type="bugfix">
7011814Svbart@nginx.com<para>
7021820Svbart@nginx.comthe controller process could crash while requesting information about a
7031820Svbart@nginx.comcertificate with a non-DNS SAN entry.
7041820Svbart@nginx.com</para>
7051820Svbart@nginx.com</change>
7061820Svbart@nginx.com
7071820Svbart@nginx.com<change type="bugfix">
7081820Svbart@nginx.com<para>
7091822Svbart@nginx.comthe controller process could crash on manipulations with a certificate
7101833Sartem.konev@nginx.comcontaining a SAN and no standard name attributes in subject or issuer.
7111822Svbart@nginx.com</para>
7121822Svbart@nginx.com</change>
7131822Svbart@nginx.com
7141822Svbart@nginx.com<change type="bugfix">
7151822Svbart@nginx.com<para>
7161833Sartem.konev@nginx.comthe Ruby module didn't respect the user locale for defaults in the Encoding
7171833Sartem.konev@nginx.comclass.
7181814Svbart@nginx.com</para>
7191814Svbart@nginx.com</change>
7201814Svbart@nginx.com
7211815Svbart@nginx.com<change type="bugfix">
7221815Svbart@nginx.com<para>
7231815Svbart@nginx.comthe PHP 5 module failed to build with thread safety enabled; the bug had
7241815Svbart@nginx.comappeared in 1.22.0.
7251815Svbart@nginx.com</para>
7261815Svbart@nginx.com</change>
7271815Svbart@nginx.com
7281806Svbart@nginx.com</changes>
7291806Svbart@nginx.com
7301806Svbart@nginx.com
7311798Sdefan@nginx.com<changes apply="unit-python3.9" ver="1.22.0" rev="1"
7321798Sdefan@nginx.com         date="2021-02-04" time="18:00:00 +0300"
7331798Sdefan@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
7341798Sdefan@nginx.com
7351798Sdefan@nginx.com<change>
7361798Sdefan@nginx.com<para>
7371798Sdefan@nginx.comInitial release of Python 3.9 module for NGINX Unit.
7381798Sdefan@nginx.com</para>
7391798Sdefan@nginx.com</change>
7401798Sdefan@nginx.com
7411798Sdefan@nginx.com</changes>
7421798Sdefan@nginx.com
7431798Sdefan@nginx.com
7441763Sdefan@nginx.com<changes apply="unit-php
7451763Sdefan@nginx.com                unit-python unit-python2.7
7461763Sdefan@nginx.com                unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7
7471763Sdefan@nginx.com                unit-python3.8
7481763Sdefan@nginx.com                unit-go
7491763Sdefan@nginx.com                unit-perl
7501763Sdefan@nginx.com                unit-ruby
7511763Sdefan@nginx.com                unit-jsc-common unit-jsc8 unit-jsc10 unit-jsc11 unit-jsc13
7521763Sdefan@nginx.com                unit-jsc14 unit-jsc15"
7531763Sdefan@nginx.com         ver="1.22.0" rev="1"
7541793Svbart@nginx.com         date="2021-02-04" time="18:00:00 +0300"
7551763Sdefan@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
7561763Sdefan@nginx.com
7571763Sdefan@nginx.com<change>
7581763Sdefan@nginx.com<para>
7591763Sdefan@nginx.comNGINX Unit updated to 1.22.0.
7601763Sdefan@nginx.com</para>
7611763Sdefan@nginx.com</change>
7621763Sdefan@nginx.com
7631763Sdefan@nginx.com</changes>
7641763Sdefan@nginx.com
7651763Sdefan@nginx.com
7661727Svbart@nginx.com<changes apply="unit" ver="1.22.0" rev="1"
7671793Svbart@nginx.com         date="2021-02-04" time="18:00:00 +0300"
7681727Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
7691727Svbart@nginx.com
7701759Svbart@nginx.com<change type="feature">
7711759Svbart@nginx.com<para>
7721792Svbart@nginx.comthe ServerRequest and ServerResponse objects of Node.js module are now
7731792Svbart@nginx.comcompliant with Stream API.
7741759Svbart@nginx.com</para>
7751759Svbart@nginx.com</change>
7761759Svbart@nginx.com
7771766Smax.romanov@nginx.com<change type="feature">
7781766Smax.romanov@nginx.com<para>
7791792Svbart@nginx.comsupport for specifying multiple directories in the "path" option of Python
7801792Svbart@nginx.comapps.
7811732Svbart@nginx.com</para>
7821732Svbart@nginx.com</change>
7831732Svbart@nginx.com
7841733Svbart@nginx.com<change type="bugfix">
7851733Svbart@nginx.com<para>
7861792Svbart@nginx.coma memory leak occurred in the router process when serving files larger than
7871792Svbart@nginx.com128K; the bug had appeared in 1.13.0.
7881754Smax.romanov@nginx.com</para>
7891754Smax.romanov@nginx.com</change>
7901754Smax.romanov@nginx.com
7911755Smax.romanov@nginx.com<change type="bugfix">
7921755Smax.romanov@nginx.com<para>
7931790Sartem.konev@nginx.comapps could stop processing new requests under high load; the bug had
7941755Smax.romanov@nginx.comappeared in 1.19.0.
7951755Smax.romanov@nginx.com</para>
7961755Smax.romanov@nginx.com</change>
7971755Smax.romanov@nginx.com
7981756Smax.romanov@nginx.com<change type="bugfix">
7991756Smax.romanov@nginx.com<para>
8001790Sartem.konev@nginx.comapp processes could terminate unexpectedly under high load; the bug had
8011790Sartem.konev@nginx.comappeared in 1.19.0.
8021756Smax.romanov@nginx.com</para>
8031756Smax.romanov@nginx.com</change>
8041756Smax.romanov@nginx.com
8051760Smax.romanov@nginx.com<change type="bugfix">
8061760Smax.romanov@nginx.com<para>
8071792Svbart@nginx.cominvalid HTTP responses were generated for some unusual status codes.
8081792Svbart@nginx.com</para>
8091792Svbart@nginx.com</change>
8101792Svbart@nginx.com
8111792Svbart@nginx.com<change type="bugfix">
8121792Svbart@nginx.com<para>
8131792Svbart@nginx.comthe PHP_AUTH_USER, PHP_AUTH_PW, and PHP_AUTH_DIGEST server variables were
8141792Svbart@nginx.commissing in the PHP module.
8151792Svbart@nginx.com</para>
8161792Svbart@nginx.com</change>
8171792Svbart@nginx.com
8181792Svbart@nginx.com<change type="bugfix">
8191792Svbart@nginx.com<para>
8201792Svbart@nginx.comthe router process could crash with multithreaded apps under high load.
8211792Svbart@nginx.com</para>
8221792Svbart@nginx.com</change>
8231792Svbart@nginx.com
8241792Svbart@nginx.com<change type="bugfix">
8251792Svbart@nginx.com<para>
8261792Svbart@nginx.comRuby apps with multithreading configured could crash on start under load.
8271792Svbart@nginx.com</para>
8281792Svbart@nginx.com</change>
8291792Svbart@nginx.com
8301792Svbart@nginx.com<change type="bugfix">
8311792Svbart@nginx.com<para>
8321792Svbart@nginx.commount points weren't unmounted when the "mount" namespace isolation was used;
8331792Svbart@nginx.comthe bug had appeared in 1.21.0.
8341760Smax.romanov@nginx.com</para>
8351760Smax.romanov@nginx.com</change>
8361760Smax.romanov@nginx.com
8371780Smax.romanov@nginx.com<change type="bugfix">
8381780Smax.romanov@nginx.com<para>
8391790Sartem.konev@nginx.comthe router process could crash while removing or reconfiguring an app that used
8401790Sartem.konev@nginx.comWebSocket.
8411780Smax.romanov@nginx.com</para>
8421780Smax.romanov@nginx.com</change>
8431780Smax.romanov@nginx.com
8441789Smax.romanov@nginx.com<change type="bugfix">
8451789Smax.romanov@nginx.com<para>
8461789Smax.romanov@nginx.coma memory leak occurring in the router process when removing or reconfiguring
8471789Smax.romanov@nginx.coman application; the bug had appeared in 1.19.0.
8481789Smax.romanov@nginx.com</para>
8491789Smax.romanov@nginx.com</change>
8501789Smax.romanov@nginx.com
8511727Svbart@nginx.com</changes>
8521727Svbart@nginx.com
8531727Svbart@nginx.com
8541722Svbart@nginx.com<changes apply="unit-jsc15" ver="1.21.0" rev="1"
8551722Svbart@nginx.com         date="2020-11-19" time="18:00:00 +0300"
8561722Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
8571722Svbart@nginx.com
8581722Svbart@nginx.com<change>
8591722Svbart@nginx.com<para>
8601722Svbart@nginx.comInitial release of Java 15 module for NGINX Unit.
8611722Svbart@nginx.com</para>
8621722Svbart@nginx.com</change>
8631722Svbart@nginx.com
8641722Svbart@nginx.com</changes>
8651722Svbart@nginx.com
8661722Svbart@nginx.com
8671722Svbart@nginx.com<changes apply="unit-jsc14" ver="1.21.0" rev="1"
8681722Svbart@nginx.com         date="2020-11-19" time="18:00:00 +0300"
869