xref: /unit/docs/changes.xml (revision 2181)
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
40*2181Salx.manpages@gmail.com<change type="change">
41*2181Salx.manpages@gmail.com<para>
42*2181Salx.manpages@gmail.comdisallowed abstract Unix domain socket syntax in non-Linux systems.
43*2181Salx.manpages@gmail.com</para>
44*2181Salx.manpages@gmail.com</change>
45*2181Salx.manpages@gmail.com
462133Sz.hong@f5.com<change type="feature">
472133Sz.hong@f5.com<para>
482179Salx.manpages@gmail.comsupporting abstract UNIX sockets.
492179Salx.manpages@gmail.com</para>
502179Salx.manpages@gmail.com</change>
512179Salx.manpages@gmail.com
522179Salx.manpages@gmail.com<change type="feature">
532179Salx.manpages@gmail.com<para>
542161Salx.manpages@gmail.comsupporting UNIX sockets in address matching.
552161Salx.manpages@gmail.com</para>
562161Salx.manpages@gmail.com</change>
572161Salx.manpages@gmail.com
582161Salx.manpages@gmail.com<change type="feature">
592161Salx.manpages@gmail.com<para>
602133Sz.hong@f5.comforwarded header to replace client address and protocol.
612133Sz.hong@f5.com</para>
622133Sz.hong@f5.com</change>
632133Sz.hong@f5.com
642147Sz.hong@f5.com<change type="feature">
652147Sz.hong@f5.com<para>
662147Sz.hong@f5.comability to get dynamic variables.
672147Sz.hong@f5.com</para>
682147Sz.hong@f5.com</change>
692147Sz.hong@f5.com
702149Sz.hong@f5.com<change type="feature">
712149Sz.hong@f5.com<para>
722149Sz.hong@f5.commore http variables support.
732149Sz.hong@f5.com</para>
742149Sz.hong@f5.com</change>
752149Sz.hong@f5.com
762161Salx.manpages@gmail.com<change type="feature">
772161Salx.manpages@gmail.com<para>
782161Salx.manpages@gmail.comadded a new variable, $dollar, that translates to a literal "$" during
792162Salx.manpages@gmail.comvariable substitution.
802161Salx.manpages@gmail.com</para>
812161Salx.manpages@gmail.com</change>
822161Salx.manpages@gmail.com
832166Sz.hong@f5.com<change type="feature">
842166Sz.hong@f5.com<para>
852166Sz.hong@f5.comcustomizable access log format.
862166Sz.hong@f5.com</para>
872166Sz.hong@f5.com</change>
882166Sz.hong@f5.com
892137Salx.manpages@gmail.com<change type="bugfix">
902137Salx.manpages@gmail.com<para>
912137Salx.manpages@gmail.coman index file that didn't contain a file extension was incorrectly
922137Salx.manpages@gmail.comhandled, and caused a use-after-free bug.
932137Salx.manpages@gmail.com</para>
942137Salx.manpages@gmail.com</change>
952137Salx.manpages@gmail.com
962163Salx.manpages@gmail.com<change type="bugfix">
972163Salx.manpages@gmail.com<para>
982163Salx.manpages@gmail.comforce SCRIPT_NAME in Ruby to always be an empty string.
992163Salx.manpages@gmail.com</para>
1002163Salx.manpages@gmail.com</change>
1012163Salx.manpages@gmail.com
1022164Sz.hong@f5.com<change type="bugfix">
1032164Sz.hong@f5.com<para>
1042164Sz.hong@f5.comthe ruby application process could crash if it's interrupted by SIGTERM signal.
1052164Sz.hong@f5.com</para>
1062164Sz.hong@f5.com</change>
1072164Sz.hong@f5.com
1082174Smax.romanov@gmail.com<change type="bugfix">
1092174Smax.romanov@gmail.com<para>
1102174Smax.romanov@gmail.comwhen isolated PID numbers reach the prototype process host PID,
1112174Smax.romanov@gmail.comthe prototype crashed.
1122174Smax.romanov@gmail.com</para>
1132174Smax.romanov@gmail.com</change>
1142174Smax.romanov@gmail.com
1152129Szelenkov@nginx.com</changes>
1162129Szelenkov@nginx.com
1172129Szelenkov@nginx.com
1182129Szelenkov@nginx.com<changes apply="unit-php
1192129Szelenkov@nginx.com                unit-python unit-python2.7
1202129Szelenkov@nginx.com                unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7
1212129Szelenkov@nginx.com                unit-python3.8 unit-python3.9 unit-python3.10
1222129Szelenkov@nginx.com                unit-go
1232129Szelenkov@nginx.com                unit-perl
1242129Szelenkov@nginx.com                unit-ruby
1252129Szelenkov@nginx.com                unit-jsc-common unit-jsc8 unit-jsc10 unit-jsc11 unit-jsc13
1262129Szelenkov@nginx.com                unit-jsc14 unit-jsc15 unit-jsc16 unit-jsc17 unit-jsc18"
1272012Svbart@nginx.com         ver="1.27.0" rev="1"
1282127Szelenkov@nginx.com         date="2022-06-02" time="18:00:00 +0300"
1292012Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
1302012Svbart@nginx.com
1312012Svbart@nginx.com<change>
1322012Svbart@nginx.com<para>
1332012Svbart@nginx.comNGINX Unit updated to 1.27.0.
1342012Svbart@nginx.com</para>
1352012Svbart@nginx.com</change>
1362012Svbart@nginx.com
1372012Svbart@nginx.com</changes>
1382012Svbart@nginx.com
1392012Svbart@nginx.com
1402012Svbart@nginx.com<changes apply="unit" ver="1.27.0" rev="1"
1412127Szelenkov@nginx.com         date="2022-06-02" time="18:00:00 +0300"
1422012Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
1432012Svbart@nginx.com
1442072Sz.hong@f5.com<change type="feature">
1452072Sz.hong@f5.com<para>
1462108Salx.manpages@gmail.comability to specify a custom index file name when serving static files.
1472108Salx.manpages@gmail.com</para>
1482108Salx.manpages@gmail.com</change>
1492108Salx.manpages@gmail.com
1502108Salx.manpages@gmail.com<change type="feature">
1512108Salx.manpages@gmail.com<para>
1522081Salx.manpages@gmail.comvariables support in the "location" option of the "return" action.
1532081Salx.manpages@gmail.com</para>
1542081Salx.manpages@gmail.com</change>
1552081Salx.manpages@gmail.com
1562081Salx.manpages@gmail.com<change type="feature">
1572081Salx.manpages@gmail.com<para>
1582113Sartem.konev@nginx.comsupport empty strings in the "location" option of the "return" action.
1592113Sartem.konev@nginx.com</para>
1602113Sartem.konev@nginx.com</change>
1612113Sartem.konev@nginx.com
1622113Sartem.konev@nginx.com<change type="feature">
1632113Sartem.konev@nginx.com<para>
1642113Sartem.konev@nginx.comadded a new variable, $request_uri, that includes both the path and the query
1652113Sartem.konev@nginx.comparts as per RFC 3986, sections 3-4.
1662113Sartem.konev@nginx.com</para>
1672113Sartem.konev@nginx.com</change>
1682113Sartem.konev@nginx.com
1692113Sartem.konev@nginx.com<change type="feature">
1702113Sartem.konev@nginx.com<para>
1712113Sartem.konev@nginx.comRuby Rack environment parameter "SCRIPT_NAME" support.
1722110Salx.manpages@gmail.com</para>
1732110Salx.manpages@gmail.com</change>
1742110Salx.manpages@gmail.com
1752110Salx.manpages@gmail.com<change type="feature">
1762110Salx.manpages@gmail.com<para>
1772072Sz.hong@f5.comcompatibility with GCC 12.
1782072Sz.hong@f5.com</para>
1792072Sz.hong@f5.com</change>
1802072Sz.hong@f5.com
1812060Smax.romanov@nginx.com<change type="bugfix">
1822060Smax.romanov@nginx.com<para>
1832093Sz.hong@f5.comRuby Sinatra applications don't work without custom logging.
1842093Sz.hong@f5.com</para>
1852093Sz.hong@f5.com</change>
1862093Sz.hong@f5.com
1872093Sz.hong@f5.com<change type="bugfix">
1882093Sz.hong@f5.com<para>
1892113Sartem.konev@nginx.comthe controller process could crash when a chain of more than four
1902069Sz.hong@f5.comcertificates was uploaded.
1912069Sz.hong@f5.com</para>
1922069Sz.hong@f5.com</change>
1932069Sz.hong@f5.com
1942069Sz.hong@f5.com<change type="bugfix">
1952069Sz.hong@f5.com<para>
1962060Smax.romanov@nginx.comsome Perl applications failed to process the request body, notably with Plack.
1972060Smax.romanov@nginx.com</para>
1982060Smax.romanov@nginx.com</change>
1992060Smax.romanov@nginx.com
2002061Smax.romanov@nginx.com<change type="bugfix">
2012061Smax.romanov@nginx.com<para>
2022061Smax.romanov@nginx.comsome Spring Boot applications failed to start, notably with Grails.
2032061Smax.romanov@nginx.com</para>
2042061Smax.romanov@nginx.com</change>
2052061Smax.romanov@nginx.com
2062067Smax.romanov@nginx.com<change type="bugfix">
2072067Smax.romanov@nginx.com<para>
2082067Smax.romanov@nginx.comincorrect Python protocol auto detection (ASGI or WSGI) for native callable
2092067Smax.romanov@nginx.comobject, notably with Falcon.
2102067Smax.romanov@nginx.com</para>
2112067Smax.romanov@nginx.com</change>
2122067Smax.romanov@nginx.com
2132117Szelenkov@nginx.com<change type="bugfix">
2142117Szelenkov@nginx.com<para>
2152117Szelenkov@nginx.comECMAScript modules did not work with the recent Node.js versions.
2162117Szelenkov@nginx.com</para>
2172117Szelenkov@nginx.com</change>
2182117Szelenkov@nginx.com
2192050Svbart@nginx.com</changes>
2202050Svbart@nginx.com
2212050Svbart@nginx.com
2222050Svbart@nginx.com<changes apply="unit-php
2232050Svbart@nginx.com                unit-python unit-python2.7
2242050Svbart@nginx.com                unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7
2252050Svbart@nginx.com                unit-python3.8 unit-python3.9 unit-python3.10
2262050Svbart@nginx.com                unit-go
2272050Svbart@nginx.com                unit-perl
2282050Svbart@nginx.com                unit-ruby
2292050Svbart@nginx.com                unit-jsc-common unit-jsc8 unit-jsc10 unit-jsc11 unit-jsc13
2302050Svbart@nginx.com                unit-jsc14 unit-jsc15 unit-jsc16 unit-jsc17 unit-jsc18"
2312029SN/A         ver="1.26.1" rev="1"
2322045SN/A         date="2021-12-02" time="18:00:00 +0300"
2332029SN/A         packager="Andrei Belov &lt;defan@nginx.com&gt;">
2342029SN/A
2352029SN/A<change>
2362029SN/A<para>
2372029SN/ANGINX Unit updated to 1.26.1.
2382029SN/A</para>
2392029SN/A</change>
2402029SN/A
2412029SN/A</changes>
2422029SN/A
2432029SN/A
2442029SN/A<changes apply="unit" ver="1.26.1" rev="1"
2452045SN/A         date="2021-12-02" time="18:00:00 +0300"
2462029SN/A         packager="Andrei Belov &lt;defan@nginx.com&gt;">
2472029SN/A
2482033SN/A<change type="bugfix">
2492033SN/A<para>
2502044SN/Aoccasionally, the Unit daemon was unable to fully terminate; the bug had
2512044SN/Aappeared in 1.26.0.
2522033SN/A</para>
2532033SN/A</change>
2542033SN/A
2552034SN/A<change type="bugfix">
2562034SN/A<para>
2572044SN/Aa prototype process could crash on an application process exit; the bug had
2582034SN/Aappeared in 1.26.0.
2592034SN/A</para>
2602034SN/A</change>
2612034SN/A
2622035SN/A<change type="bugfix">
2632035SN/A<para>
2642044SN/Athe router process crashed on reconfiguration if "access_log" was configured
2652044SN/Awithout listeners.
2662044SN/A</para>
2672044SN/A</change>
2682044SN/A
2692044SN/A<change type="bugfix">
2702044SN/A<para>
2712035SN/Aa segmentation fault occurred in the PHP module if chdir() or
2722035SN/Afastcgi_finish_request() was called in the OPcache preloading script.
2732035SN/A</para>
2742035SN/A</change>
2752035SN/A
2762040SN/A<change type="bugfix">
2772040SN/A<para>
2782041SN/Afatal errors on DragonFly BSD; the bug had appeared in 1.26.0.
2792041SN/A</para>
2802041SN/A</change>
2812041SN/A
2822029SN/A</changes>
2832029SN/A
2842029SN/A
2851973Sdefan@nginx.com<changes apply="unit-jsc18" ver="1.26.0" rev="1"
2862007Svbart@nginx.com         date="2021-11-18" time="18:00:00 +0300"
2871973Sdefan@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
2881973Sdefan@nginx.com
2891973Sdefan@nginx.com<change>
2901973Sdefan@nginx.com<para>
2911973Sdefan@nginx.comInitial release of Java 18 module for NGINX Unit.
2921973Sdefan@nginx.com</para>
2931973Sdefan@nginx.com</change>
2941973Sdefan@nginx.com
2951973Sdefan@nginx.com</changes>
2961973Sdefan@nginx.com
2971973Sdefan@nginx.com
2981973Sdefan@nginx.com<changes apply="unit-python3.10" ver="1.26.0" rev="1"
2992007Svbart@nginx.com         date="2021-11-18" time="18:00:00 +0300"
3001973Sdefan@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
3011973Sdefan@nginx.com
3021973Sdefan@nginx.com<change>
3031973Sdefan@nginx.com<para>
3041973Sdefan@nginx.comInitial release of Python 3.10 module for NGINX Unit.
3051973Sdefan@nginx.com</para>
3061973Sdefan@nginx.com</change>
3071973Sdefan@nginx.com
3081973Sdefan@nginx.com</changes>
3091973Sdefan@nginx.com
3101973Sdefan@nginx.com
3111896Svbart@nginx.com<changes apply="unit-php
3121896Svbart@nginx.com                unit-python unit-python2.7
3131896Svbart@nginx.com                unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7
3141896Svbart@nginx.com                unit-python3.8 unit-python3.9
3151896Svbart@nginx.com                unit-go
3161896Svbart@nginx.com                unit-perl
3171896Svbart@nginx.com                unit-ruby
3181896Svbart@nginx.com                unit-jsc-common unit-jsc8 unit-jsc10 unit-jsc11 unit-jsc13
3191896Svbart@nginx.com                unit-jsc14 unit-jsc15 unit-jsc16 unit-jsc17"
3201951Svbart@nginx.com         ver="1.26.0" rev="1"
3212007Svbart@nginx.com         date="2021-11-18" time="18:00:00 +0300"
3221951Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
3231951Svbart@nginx.com
3241951Svbart@nginx.com<change>
3251951Svbart@nginx.com<para>
3261951Svbart@nginx.comNGINX Unit updated to 1.26.0.
3271951Svbart@nginx.com</para>
3281951Svbart@nginx.com</change>
3291951Svbart@nginx.com
3301951Svbart@nginx.com</changes>
3311951Svbart@nginx.com
3321951Svbart@nginx.com
3331951Svbart@nginx.com<changes apply="unit" ver="1.26.0" rev="1"
3342007Svbart@nginx.com         date="2021-11-18" time="18:00:00 +0300"
3351951Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
3361951Svbart@nginx.com
3371960Sz.hong@f5.com<change type="change">
3381960Sz.hong@f5.com<para>
3391960Sz.hong@f5.comthe "share" option now specifies the entire path to the files it serves,
3401960Sz.hong@f5.comrather than a document root directory to be prepended to the request URI.
3411960Sz.hong@f5.com</para>
3421960Sz.hong@f5.com</change>
3431960Sz.hong@f5.com
3441960Sz.hong@f5.com<change type="feature">
3451960Sz.hong@f5.com<para>
3462006Svbart@nginx.comautomatic adjustment of existing configurations to the new "share" behavior
3472006Svbart@nginx.comwhen updating from previous versions.
3482006Svbart@nginx.com</para>
3492006Svbart@nginx.com</change>
3502006Svbart@nginx.com
3512006Svbart@nginx.com<change type="feature">
3522006Svbart@nginx.com<para>
3531960Sz.hong@f5.comvariables support in the "share" option.
3541960Sz.hong@f5.com</para>
3551960Sz.hong@f5.com</change>
3561960Sz.hong@f5.com
3571959Sz.hong@f5.com<change type="feature">
3581959Sz.hong@f5.com<para>
3591961Sz.hong@f5.commultiple paths in the "share" option.
3601961Sz.hong@f5.com</para>
3611961Sz.hong@f5.com</change>
3621961Sz.hong@f5.com
3631961Sz.hong@f5.com<change type="feature">
3641961Sz.hong@f5.com<para>
3651959Sz.hong@f5.comvariables support in the "chroot" option.
3661959Sz.hong@f5.com</para>
3671959Sz.hong@f5.com</change>
3681959Sz.hong@f5.com
3691969Sz.hong@f5.com<change type="feature">
3701969Sz.hong@f5.com<para>
3712006Svbart@nginx.comPHP opcache is shared between application processes.
3721969Sz.hong@f5.com</para>
3731969Sz.hong@f5.com</change>
3741969Sz.hong@f5.com
3751991Sz.hong@f5.com<change type="feature">
3761991Sz.hong@f5.com<para>
3771991Sz.hong@f5.comrequest routing by the query string.
3781991Sz.hong@f5.com</para>
3791991Sz.hong@f5.com</change>
3801991Sz.hong@f5.com
3811955Smax.romanov@nginx.com<change type="bugfix">
3821955Smax.romanov@nginx.com<para>
3832006Svbart@nginx.comthe router and app processes could crash when the requests limit was reached
3842006Svbart@nginx.comby asynchronous or multithreaded apps.
3851955Smax.romanov@nginx.com</para>
3861955Smax.romanov@nginx.com</change>
3871955Smax.romanov@nginx.com
3881956Smax.romanov@nginx.com<change type="bugfix">
3891956Smax.romanov@nginx.com<para>
3901956Smax.romanov@nginx.comestablished WebSocket connections could stop reading frames from the client
3911956Smax.romanov@nginx.comafter the corresponding listener had been reconfigured.
3921956Smax.romanov@nginx.com</para>
3931956Smax.romanov@nginx.com</change>
3941956Smax.romanov@nginx.com
3951992Smax.romanov@nginx.com<change type="bugfix">
3961992Smax.romanov@nginx.com<para>
3972006Svbart@nginx.comfixed building with glibc 2.34, notably Fedora 35.
3981992Smax.romanov@nginx.com</para>
3991992Smax.romanov@nginx.com</change>
4001992Smax.romanov@nginx.com
4011951Svbart@nginx.com</changes>
4021951Svbart@nginx.com
4031951Svbart@nginx.com
4041951Svbart@nginx.com<changes apply="unit-php
4051951Svbart@nginx.com                unit-python unit-python2.7
4061951Svbart@nginx.com                unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7
4071951Svbart@nginx.com                unit-python3.8 unit-python3.9
4081951Svbart@nginx.com                unit-go
4091951Svbart@nginx.com                unit-perl
4101951Svbart@nginx.com                unit-ruby
4111951Svbart@nginx.com                unit-jsc-common unit-jsc8 unit-jsc10 unit-jsc11 unit-jsc13
4121951Svbart@nginx.com                unit-jsc14 unit-jsc15 unit-jsc16 unit-jsc17"
4131896Svbart@nginx.com         ver="1.25.0" rev="1"
4141945Svbart@nginx.com         date="2021-08-19" time="18:00:00 +0300"
4151896Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
4161896Svbart@nginx.com
4171896Svbart@nginx.com<change>
4181896Svbart@nginx.com<para>
4191896Svbart@nginx.comNGINX Unit updated to 1.25.0.
4201896Svbart@nginx.com</para>
4211896Svbart@nginx.com</change>
4221896Svbart@nginx.com
4231896Svbart@nginx.com</changes>
4241896Svbart@nginx.com
4251896Svbart@nginx.com
4261896Svbart@nginx.com<changes apply="unit" ver="1.25.0" rev="1"
4271945Svbart@nginx.com         date="2021-08-19" time="18:00:00 +0300"
4281896Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
4291896Svbart@nginx.com
4301910So.canty@f5.com<change type="feature">
4311910So.canty@f5.com<para>
4321944Svbart@nginx.comclient IP address replacement from a specified HTTP header field.
4331942Sa.suvorov@f5.com</para>
4341942Sa.suvorov@f5.com</change>
4351942Sa.suvorov@f5.com
4361942Sa.suvorov@f5.com<change type="feature">
4371942Sa.suvorov@f5.com<para>
4381920Sa.suvorov@f5.comTLS sessions cache.
4391920Sa.suvorov@f5.com</para>
4401920Sa.suvorov@f5.com</change>
4411920Sa.suvorov@f5.com
4421920Sa.suvorov@f5.com<change type="feature">
4431920Sa.suvorov@f5.com<para>
4441944Svbart@nginx.comTLS session tickets.
4451910So.canty@f5.com</para>
4461910So.canty@f5.com</change>
4471910So.canty@f5.com
4481926Smax.romanov@nginx.com<change type="feature">
4491926Smax.romanov@nginx.com<para>
4501926Smax.romanov@nginx.comapplication restart control.
4511926Smax.romanov@nginx.com</para>
4521926Smax.romanov@nginx.com</change>
4531926Smax.romanov@nginx.com
4541936So.canty@f5.com<change type="feature">
4551936So.canty@f5.com<para>
4561944Svbart@nginx.comprocess and thread lifecycle hooks in Ruby.
4571936So.canty@f5.com</para>
4581936So.canty@f5.com</change>
4591936So.canty@f5.com
4601907Smax.romanov@nginx.com<change type="bugfix">
4611907Smax.romanov@nginx.com<para>
4621944Svbart@nginx.comthe router process could crash on TLS connection open when multiple listeners
4631944Svbart@nginx.comwith TLS certificates were configured; the bug had appeared in 1.23.0.
4641921Sa.suvorov@f5.com</para>
4651921Sa.suvorov@f5.com</change>
4661921Sa.suvorov@f5.com
4671921Sa.suvorov@f5.com<change type="bugfix">
4681921Sa.suvorov@f5.com<para>
4691944Svbart@nginx.comTLS connections were rejected for configurations with multiple certificate
4701944Svbart@nginx.combundles in a listener if the client did not use SNI.
4711907Smax.romanov@nginx.com</para>
4721907Smax.romanov@nginx.com</change>
4731907Smax.romanov@nginx.com
4741907Smax.romanov@nginx.com<change type="bugfix">
4751907Smax.romanov@nginx.com<para>
4761950Sartem.konev@nginx.comthe router process could crash with frequent multithreaded application
4771915Smax.romanov@nginx.comreconfiguration.
4781915Smax.romanov@nginx.com</para>
4791915Smax.romanov@nginx.com</change>
4801915Smax.romanov@nginx.com
4811915Smax.romanov@nginx.com<change type="bugfix">
4821915Smax.romanov@nginx.com<para>
4831944Svbart@nginx.comcompatibility issues with some Python ASGI apps, notably based on the Starlette
4841944Svbart@nginx.comframework.
4851944Svbart@nginx.com</para>
4861944Svbart@nginx.com</change>
4871944Svbart@nginx.com
4881944Svbart@nginx.com<change type="bugfix">
4891944Svbart@nginx.com<para>
4901944Svbart@nginx.coma descriptor and memory leak occurred in the router process when an app process
4911944Svbart@nginx.comstopped or crashed.
4921907Smax.romanov@nginx.com</para>
4931907Smax.romanov@nginx.com</change>
4941907Smax.romanov@nginx.com
4951909So.canty@f5.com<change type="bugfix">
4961909So.canty@f5.com<para>
4971909So.canty@f5.comthe controller or router process could crash if the configuration contained
4981909So.canty@f5.coma full-form IPv6 in a listener address.
4991909So.canty@f5.com</para>
5001909So.canty@f5.com</change>
5011909So.canty@f5.com
5021916Smax.romanov@nginx.com<change type="bugfix">
5031916Smax.romanov@nginx.com<para>
5041929Sz.hong@f5.comthe router process crashed when a request was passed to an empty "routes"
5051929Sz.hong@f5.comor "upstreams" using a variable "pass" option.
5061929Sz.hong@f5.com</para>
5071929Sz.hong@f5.com</change>
5081929Sz.hong@f5.com
5091930So.canty@f5.com<change type="bugfix">
5101930So.canty@f5.com<para>
5111944Svbart@nginx.comthe router process crashed while matching a request to an empty array of source
5121944Svbart@nginx.comor destination address patterns.
5131930So.canty@f5.com</para>
5141930So.canty@f5.com</change>
5151930So.canty@f5.com
5161896Svbart@nginx.com</changes>
5171896Svbart@nginx.com
5181896Svbart@nginx.com
5191887Sdefan@nginx.com<changes apply="unit-jsc17" ver="1.24.0" rev="1"
5201891Svbart@nginx.com         date="2021-05-27" time="18:00:00 +0300"
5211887Sdefan@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
5221887Sdefan@nginx.com
5231887Sdefan@nginx.com<change>
5241887Sdefan@nginx.com<para>
5251887Sdefan@nginx.comInitial release of Java 17 module for NGINX Unit.
5261887Sdefan@nginx.com</para>
5271887Sdefan@nginx.com</change>
5281887Sdefan@nginx.com
5291887Sdefan@nginx.com</changes>
5301887Sdefan@nginx.com
5311887Sdefan@nginx.com
5321887Sdefan@nginx.com<changes apply="unit-jsc16" ver="1.24.0" rev="1"
5331891Svbart@nginx.com         date="2021-05-27" time="18:00:00 +0300"
5341887Sdefan@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
5351887Sdefan@nginx.com
5361887Sdefan@nginx.com<change>
5371887Sdefan@nginx.com<para>
5381887Sdefan@nginx.comInitial release of Java 16 module for NGINX Unit.
5391887Sdefan@nginx.com</para>
5401887Sdefan@nginx.com</change>
5411887Sdefan@nginx.com
5421887Sdefan@nginx.com</changes>
5431887Sdefan@nginx.com
5441887Sdefan@nginx.com
5451834Svbart@nginx.com<changes apply="unit-php
5461834Svbart@nginx.com                unit-python unit-python2.7
5471834Svbart@nginx.com                unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7
5481834Svbart@nginx.com                unit-python3.8 unit-python3.9
5491834Svbart@nginx.com                unit-go
5501834Svbart@nginx.com                unit-perl
5511834Svbart@nginx.com                unit-ruby
5521834Svbart@nginx.com                unit-jsc-common unit-jsc8 unit-jsc10 unit-jsc11 unit-jsc13
5531834Svbart@nginx.com                unit-jsc14 unit-jsc15"
5541839Svbart@nginx.com         ver="1.24.0" rev="1"
5551891Svbart@nginx.com         date="2021-05-27" time="18:00:00 +0300"
5561839Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
5571839Svbart@nginx.com
5581839Svbart@nginx.com<change>
5591839Svbart@nginx.com<para>
5601839Svbart@nginx.comNGINX Unit updated to 1.24.0.
5611839Svbart@nginx.com</para>
5621839Svbart@nginx.com</change>
5631839Svbart@nginx.com
5641839Svbart@nginx.com</changes>
5651839Svbart@nginx.com
5661839Svbart@nginx.com
5671839Svbart@nginx.com<changes apply="unit" ver="1.24.0" rev="1"
5681891Svbart@nginx.com         date="2021-05-27" time="18:00:00 +0300"
5691839Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
5701839Svbart@nginx.com
5711882So.canty@f5.com<change type="change">
5721882So.canty@f5.com<para>
5731882So.canty@f5.comPHP added to the default MIME type list.
5741882So.canty@f5.com</para>
5751882So.canty@f5.com</change>
5761882So.canty@f5.com
5771855Sz.hong@f5.com<change type="feature">
5781855Sz.hong@f5.com<para>
5791885Sa.suvorov@f5.comarbitrary configuration of TLS connections via OpenSSL commands.
5801885Sa.suvorov@f5.com</para>
5811885Sa.suvorov@f5.com</change>
5821885Sa.suvorov@f5.com
5831885Sa.suvorov@f5.com<change type="feature">
5841885Sa.suvorov@f5.com<para>
5851890Svbart@nginx.comthe ability to limit static file serving by MIME types.
5861890Svbart@nginx.com</para>
5871890Svbart@nginx.com</change>
5881890Svbart@nginx.com
5891890Svbart@nginx.com<change type="feature">
5901890Svbart@nginx.com<para>
5911890Svbart@nginx.comsupport for chrooting, rejecting symlinks, and rejecting mount
5921890Svbart@nginx.compoint traversal on a per-request basis when serving static files.
5931872So.canty@f5.com</para>
5941872So.canty@f5.com</change>
5951872So.canty@f5.com
5961872So.canty@f5.com<change type="feature">
5971872So.canty@f5.com<para>
5981889Sartem.konev@nginx.coma loader for automatically overriding the "http" and "websocket" modules in
5991889Sartem.konev@nginx.comNode.js.
6001865So.canty@f5.com</para>
6011865So.canty@f5.com</change>
6021865So.canty@f5.com
6031865So.canty@f5.com<change type="feature">
6041865So.canty@f5.com<para>
6051890Svbart@nginx.commultiple "targets" in Python applications.
6061855Sz.hong@f5.com</para>
6071855Sz.hong@f5.com</change>
6081855Sz.hong@f5.com
6091870So.canty@f5.com<change type="feature">
6101870So.canty@f5.com<para>
6111870So.canty@f5.comcompatibility with Ruby 3.0.
6121870So.canty@f5.com</para>
6131870So.canty@f5.com</change>
6141870So.canty@f5.com
6151861Svbart@nginx.com<change type="bugfix">
6161861Svbart@nginx.com<para>
6171889Sartem.konev@nginx.comthe router process could crash while closing a TLS connection.
6181884Sa.suvorov@f5.com</para>
6191884Sa.suvorov@f5.com</change>
6201884Sa.suvorov@f5.com
6211884Sa.suvorov@f5.com<change type="bugfix">
6221884Sa.suvorov@f5.com<para>
6231861Svbart@nginx.coma segmentation fault might have occurred in the PHP module if
6241861Svbart@nginx.comfastcgi_finish_request() was used with the "auto_globals_jit" option enabled.
6251861Svbart@nginx.com</para>
6261861Svbart@nginx.com</change>
6271861Svbart@nginx.com
6281839Svbart@nginx.com</changes>
6291839Svbart@nginx.com
6301839Svbart@nginx.com
6311839Svbart@nginx.com<changes apply="unit-php
6321839Svbart@nginx.com                unit-python unit-python2.7
6331839Svbart@nginx.com                unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7
6341839Svbart@nginx.com                unit-python3.8 unit-python3.9
6351839Svbart@nginx.com                unit-go
6361839Svbart@nginx.com                unit-perl
6371839Svbart@nginx.com                unit-ruby
6381839Svbart@nginx.com                unit-jsc-common unit-jsc8 unit-jsc10 unit-jsc11 unit-jsc13
6391839Svbart@nginx.com                unit-jsc14 unit-jsc15"
6401834Svbart@nginx.com         ver="1.23.0" rev="1"
6411834Svbart@nginx.com         date="2021-03-25" time="18:00:00 +0300"
6421834Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
6431834Svbart@nginx.com
6441834Svbart@nginx.com<change>
6451834Svbart@nginx.com<para>
6461834Svbart@nginx.comNGINX Unit updated to 1.23.0.
6471834Svbart@nginx.com</para>
6481834Svbart@nginx.com</change>
6491834Svbart@nginx.com
6501834Svbart@nginx.com</changes>
6511834Svbart@nginx.com
6521834Svbart@nginx.com
6531806Svbart@nginx.com<changes apply="unit" ver="1.23.0" rev="1"
6541834Svbart@nginx.com         date="2021-03-25" time="18:00:00 +0300"
6551806Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
6561806Svbart@nginx.com
6571825Sthresh@nginx.com<change type="feature">
6581825Sthresh@nginx.com<para>
6591833Sartem.konev@nginx.comsupport for multiple certificate bundles on a listener via the Server Name
6601828Sa.suvorov@f5.comIndication (SNI) TLS extension.
6611828Sa.suvorov@f5.com</para>
6621828Sa.suvorov@f5.com</change>
6631828Sa.suvorov@f5.com
6641828Sa.suvorov@f5.com<change type="feature">
6651828Sa.suvorov@f5.com<para>
6661833Sartem.konev@nginx.com"--mandir" ./configure option to specify the directory for man page
6671833Sartem.konev@nginx.cominstallation.
6681825Sthresh@nginx.com</para>
6691825Sthresh@nginx.com</change>
6701825Sthresh@nginx.com
6711811Smax.romanov@nginx.com<change type="bugfix">
6721811Smax.romanov@nginx.com<para>
6731812Svbart@nginx.comthe router process could crash on premature TLS connection close; the bug had
6741812Svbart@nginx.comappeared in 1.17.0.
6751812Svbart@nginx.com</para>
6761812Svbart@nginx.com</change>
6771812Svbart@nginx.com
6781812Svbart@nginx.com<change type="bugfix">
6791812Svbart@nginx.com<para>
6801833Sartem.konev@nginx.coma connection leak occurred on premature TLS connection close; the bug had
6811812Svbart@nginx.comappeared in 1.6.
6821812Svbart@nginx.com</para>
6831812Svbart@nginx.com</change>
6841812Svbart@nginx.com
6851812Svbart@nginx.com<change type="bugfix">
6861812Svbart@nginx.com<para>
6871833Sartem.konev@nginx.coma descriptor and memory leak occurred in the router process when processing
6881832Smax.romanov@nginx.comsmall WebSocket frames from a client; the bug had appeared in 1.19.0.
6891832Smax.romanov@nginx.com</para>
6901832Smax.romanov@nginx.com</change>
6911832Smax.romanov@nginx.com
6921832Smax.romanov@nginx.com<change type="bugfix">
6931832Smax.romanov@nginx.com<para>
6941833Sartem.konev@nginx.coma descriptor leak occurred in the router process when removing or
6951811Smax.romanov@nginx.comreconfiguring an application; the bug had appeared in 1.19.0.
6961811Smax.romanov@nginx.com</para>
6971811Smax.romanov@nginx.com</change>
6981806Svbart@nginx.com
6991813Svbart@nginx.com<change type="bugfix">
7001813Svbart@nginx.com<para>
7011813Svbart@nginx.compersistent storage of certificates might've not worked with some filesystems in
7021813Svbart@nginx.comLinux, and all uploaded certificate bundles were forgotten after restart.
7031813Svbart@nginx.com</para>
7041813Svbart@nginx.com</change>
7051813Svbart@nginx.com
7061814Svbart@nginx.com<change type="bugfix">
7071814Svbart@nginx.com<para>
7081820Svbart@nginx.comthe controller process could crash while requesting information about a
7091820Svbart@nginx.comcertificate with a non-DNS SAN entry.
7101820Svbart@nginx.com</para>
7111820Svbart@nginx.com</change>
7121820Svbart@nginx.com
7131820Svbart@nginx.com<change type="bugfix">
7141820Svbart@nginx.com<para>
7151822Svbart@nginx.comthe controller process could crash on manipulations with a certificate
7161833Sartem.konev@nginx.comcontaining a SAN and no standard name attributes in subject or issuer.
7171822Svbart@nginx.com</para>
7181822Svbart@nginx.com</change>
7191822Svbart@nginx.com
7201822Svbart@nginx.com<change type="bugfix">
7211822Svbart@nginx.com<para>
7221833Sartem.konev@nginx.comthe Ruby module didn't respect the user locale for defaults in the Encoding
7231833Sartem.konev@nginx.comclass.
7241814Svbart@nginx.com</para>
7251814Svbart@nginx.com</change>
7261814Svbart@nginx.com
7271815Svbart@nginx.com<change type="bugfix">
7281815Svbart@nginx.com<para>
7291815Svbart@nginx.comthe PHP 5 module failed to build with thread safety enabled; the bug had
7301815Svbart@nginx.comappeared in 1.22.0.
7311815Svbart@nginx.com</para>
7321815Svbart@nginx.com</change>
7331815Svbart@nginx.com
7341806Svbart@nginx.com</changes>
7351806Svbart@nginx.com
7361806Svbart@nginx.com
7371798Sdefan@nginx.com<changes apply="unit-python3.9" ver="1.22.0" rev="1"
7381798Sdefan@nginx.com         date="2021-02-04" time="18:00:00 +0300"
7391798Sdefan@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
7401798Sdefan@nginx.com
7411798Sdefan@nginx.com<change>
7421798Sdefan@nginx.com<para>
7431798Sdefan@nginx.comInitial release of Python 3.9 module for NGINX Unit.
7441798Sdefan@nginx.com</para>
7451798Sdefan@nginx.com</change>
7461798Sdefan@nginx.com
7471798Sdefan@nginx.com</changes>
7481798Sdefan@nginx.com
7491798Sdefan@nginx.com
7501763Sdefan@nginx.com<changes apply="unit-php
7511763Sdefan@nginx.com                unit-python unit-python2.7
7521763Sdefan@nginx.com                unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7
7531763Sdefan@nginx.com                unit-python3.8
7541763Sdefan@nginx.com                unit-go
7551763Sdefan@nginx.com                unit-perl
7561763Sdefan@nginx.com                unit-ruby
7571763Sdefan@nginx.com                unit-jsc-common unit-jsc8 unit-jsc10 unit-jsc11 unit-jsc13
7581763Sdefan@nginx.com                unit-jsc14 unit-jsc15"
7591763Sdefan@nginx.com         ver="1.22.0" rev="1"
7601793Svbart@nginx.com         date="2021-02-04" time="18:00:00 +0300"
7611763Sdefan@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
7621763Sdefan@nginx.com
7631763Sdefan@nginx.com<change>
7641763Sdefan@nginx.com<para>
7651763Sdefan@nginx.comNGINX Unit updated to 1.22.0.
7661763Sdefan@nginx.com</para>
7671763Sdefan@nginx.com</change>
7681763Sdefan@nginx.com
7691763Sdefan@nginx.com</changes>
7701763Sdefan@nginx.com
7711763Sdefan@nginx.com
7721727Svbart@nginx.com<changes apply="unit" ver="1.22.0" rev="1"
7731793Svbart@nginx.com         date="2021-02-04" time="18:00:00 +0300"
7741727Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
7751727Svbart@nginx.com
7761759Svbart@nginx.com<change type="feature">
7771759Svbart@nginx.com<para>
7781792Svbart@nginx.comthe ServerRequest and ServerResponse objects of Node.js module are now
7791792Svbart@nginx.comcompliant with Stream API.
7801759Svbart@nginx.com</para>
7811759Svbart@nginx.com</change>
7821759Svbart@nginx.com
7831766Smax.romanov@nginx.com<change type="feature">
7841766Smax.romanov@nginx.com<para>
7851792Svbart@nginx.comsupport for specifying multiple directories in the "path" option of Python
7861792Svbart@nginx.comapps.
7871732Svbart@nginx.com</para>
7881732Svbart@nginx.com</change>
7891732Svbart@nginx.com
7901733Svbart@nginx.com<change type="bugfix">
7911733Svbart@nginx.com<para>
7921792Svbart@nginx.coma memory leak occurred in the router process when serving files larger than
7931792Svbart@nginx.com128K; the bug had appeared in 1.13.0.
7941754Smax.romanov@nginx.com</para>
7951754Smax.romanov@nginx.com</change>
7961754Smax.romanov@nginx.com
7971755Smax.romanov@nginx.com<change type="bugfix">
7981755Smax.romanov@nginx.com<para>
7991790Sartem.konev@nginx.comapps could stop processing new requests under high load; the bug had
8001755Smax.romanov@nginx.comappeared in 1.19.0.
8011755Smax.romanov@nginx.com</para>
8021755Smax.romanov@nginx.com</change>
8031755Smax.romanov@nginx.com
8041756Smax.romanov@nginx.com<change type="bugfix">
8051756Smax.romanov@nginx.com<para>
8061790Sartem.konev@nginx.comapp processes could terminate unexpectedly under high load; the bug had
8071790Sartem.konev@nginx.comappeared in 1.19.0.
8081756Smax.romanov@nginx.com</para>
8091756Smax.romanov@nginx.com</change>
8101756Smax.romanov@nginx.com
8111760Smax.romanov@nginx.com<change type="bugfix">
8121760Smax.romanov@nginx.com<para>
8131792Svbart@nginx.cominvalid HTTP responses were generated for some unusual status codes.
8141792Svbart@nginx.com</para>
8151792Svbart@nginx.com</change>
8161792Svbart@nginx.com
8171792Svbart@nginx.com<change type="bugfix">
8181792Svbart@nginx.com<para>
8191792Svbart@nginx.comthe PHP_AUTH_USER, PHP_AUTH_PW, and PHP_AUTH_DIGEST server variables were
8201792Svbart@nginx.commissing in the PHP module.
8211792Svbart@nginx.com</para>
8221792Svbart@nginx.com</change>
8231792Svbart@nginx.com
8241792Svbart@nginx.com<change type="bugfix">
8251792Svbart@nginx.com<para>
8261792Svbart@nginx.comthe router process could crash with multithreaded apps under high load.
8271792Svbart@nginx.com</para>
8281792Svbart@nginx.com</change>
8291792Svbart@nginx.com
8301792Svbart@nginx.com<change type="bugfix">
8311792Svbart@nginx.com<para>
8321792Svbart@nginx.comRuby apps with multithreading configured could crash on start under load.
8331792Svbart@nginx.com</para>
8341792Svbart@nginx.com</change>
8351792Svbart@nginx.com
8361792Svbart@nginx.com<change type="bugfix">
8371792Svbart@nginx.com<para>
8381792Svbart@nginx.commount points weren't unmounted when the "mount" namespace isolation was used;
8391792Svbart@nginx.comthe bug had appeared in 1.21.0.
8401760Smax.romanov@nginx.com</para>
8411760Smax.romanov@nginx.com</change>
8421760Smax.romanov@nginx.com
8431780Smax.romanov@nginx.com<change type="bugfix">
8441780Smax.romanov@nginx.com<para>
8451790Sartem.konev@nginx.comthe router process could crash while removing or reconfiguring an app that used
8461790Sartem.konev@nginx.comWebSocket.
8471780Smax.romanov@nginx.com</para>
8481780Smax.romanov@nginx.com</change>
8491780Smax.romanov@nginx.com
8501789Smax.romanov@nginx.com<change type="bugfix">
8511789Smax.romanov@nginx.com<para>
8521789Smax.romanov@nginx.coma memory leak occurring in the router process when removing or reconfiguring
8531789Smax.romanov@nginx.coman application; the bug had appeared in 1.19.0.
8541789Smax.romanov@nginx.com</para>
8551789Smax.romanov@nginx.com</change>
8561789Smax.romanov@nginx.com
8571727Svbart@nginx.com</changes>
8581727Svbart@nginx.com
8591727Svbart@nginx.com
8601722Svbart@nginx.com<changes apply="unit-jsc15" ver="1.21.0" rev="1"
8611722Svbart@nginx.com