xref: /unit/docs/changes.xml (revision 1861)
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
81834Svbart@nginx.com<changes apply="unit-php
91834Svbart@nginx.com                unit-python unit-python2.7
101834Svbart@nginx.com                unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7
111834Svbart@nginx.com                unit-python3.8 unit-python3.9
121834Svbart@nginx.com                unit-go
131834Svbart@nginx.com                unit-perl
141834Svbart@nginx.com                unit-ruby
151834Svbart@nginx.com                unit-jsc-common unit-jsc8 unit-jsc10 unit-jsc11 unit-jsc13
161834Svbart@nginx.com                unit-jsc14 unit-jsc15"
171839Svbart@nginx.com         ver="1.24.0" rev="1"
181839Svbart@nginx.com         date="" time=""
191839Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
201839Svbart@nginx.com
211839Svbart@nginx.com<change>
221839Svbart@nginx.com<para>
231839Svbart@nginx.comNGINX Unit updated to 1.24.0.
241839Svbart@nginx.com</para>
251839Svbart@nginx.com</change>
261839Svbart@nginx.com
271839Svbart@nginx.com</changes>
281839Svbart@nginx.com
291839Svbart@nginx.com
301839Svbart@nginx.com<changes apply="unit" ver="1.24.0" rev="1"
311839Svbart@nginx.com         date="" time=""
321839Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
331839Svbart@nginx.com
341855Sz.hong@f5.com<change type="feature">
351855Sz.hong@f5.com<para>
361859So.canty@f5.comability to limit serving of static files by MIME types.
371859So.canty@f5.com</para>
381859So.canty@f5.com</change>
391859So.canty@f5.com
401859So.canty@f5.com<change type="feature">
411859So.canty@f5.com<para>
421855Sz.hong@f5.comsupport for chrooting, rejecting symlinks, and rejecting crossing mounting
431855Sz.hong@f5.compoints on a per-request basis during static file serving.
441855Sz.hong@f5.com</para>
451855Sz.hong@f5.com</change>
461855Sz.hong@f5.com
47*1861Svbart@nginx.com<change type="bugfix">
48*1861Svbart@nginx.com<para>
49*1861Svbart@nginx.coma segmentation fault might have occurred in the PHP module if
50*1861Svbart@nginx.comfastcgi_finish_request() was used with the "auto_globals_jit" option enabled.
51*1861Svbart@nginx.com</para>
52*1861Svbart@nginx.com</change>
53*1861Svbart@nginx.com
541839Svbart@nginx.com</changes>
551839Svbart@nginx.com
561839Svbart@nginx.com
571839Svbart@nginx.com<changes apply="unit-php
581839Svbart@nginx.com                unit-python unit-python2.7
591839Svbart@nginx.com                unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7
601839Svbart@nginx.com                unit-python3.8 unit-python3.9
611839Svbart@nginx.com                unit-go
621839Svbart@nginx.com                unit-perl
631839Svbart@nginx.com                unit-ruby
641839Svbart@nginx.com                unit-jsc-common unit-jsc8 unit-jsc10 unit-jsc11 unit-jsc13
651839Svbart@nginx.com                unit-jsc14 unit-jsc15"
661834Svbart@nginx.com         ver="1.23.0" rev="1"
671834Svbart@nginx.com         date="2021-03-25" time="18:00:00 +0300"
681834Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
691834Svbart@nginx.com
701834Svbart@nginx.com<change>
711834Svbart@nginx.com<para>
721834Svbart@nginx.comNGINX Unit updated to 1.23.0.
731834Svbart@nginx.com</para>
741834Svbart@nginx.com</change>
751834Svbart@nginx.com
761834Svbart@nginx.com</changes>
771834Svbart@nginx.com
781834Svbart@nginx.com
791806Svbart@nginx.com<changes apply="unit" ver="1.23.0" rev="1"
801834Svbart@nginx.com         date="2021-03-25" time="18:00:00 +0300"
811806Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
821806Svbart@nginx.com
831825Sthresh@nginx.com<change type="feature">
841825Sthresh@nginx.com<para>
851833Sartem.konev@nginx.comsupport for multiple certificate bundles on a listener via the Server Name
861828Sa.suvorov@f5.comIndication (SNI) TLS extension.
871828Sa.suvorov@f5.com</para>
881828Sa.suvorov@f5.com</change>
891828Sa.suvorov@f5.com
901828Sa.suvorov@f5.com<change type="feature">
911828Sa.suvorov@f5.com<para>
921833Sartem.konev@nginx.com"--mandir" ./configure option to specify the directory for man page
931833Sartem.konev@nginx.cominstallation.
941825Sthresh@nginx.com</para>
951825Sthresh@nginx.com</change>
961825Sthresh@nginx.com
971811Smax.romanov@nginx.com<change type="bugfix">
981811Smax.romanov@nginx.com<para>
991812Svbart@nginx.comthe router process could crash on premature TLS connection close; the bug had
1001812Svbart@nginx.comappeared in 1.17.0.
1011812Svbart@nginx.com</para>
1021812Svbart@nginx.com</change>
1031812Svbart@nginx.com
1041812Svbart@nginx.com<change type="bugfix">
1051812Svbart@nginx.com<para>
1061833Sartem.konev@nginx.coma connection leak occurred on premature TLS connection close; the bug had
1071812Svbart@nginx.comappeared in 1.6.
1081812Svbart@nginx.com</para>
1091812Svbart@nginx.com</change>
1101812Svbart@nginx.com
1111812Svbart@nginx.com<change type="bugfix">
1121812Svbart@nginx.com<para>
1131833Sartem.konev@nginx.coma descriptor and memory leak occurred in the router process when processing
1141832Smax.romanov@nginx.comsmall WebSocket frames from a client; the bug had appeared in 1.19.0.
1151832Smax.romanov@nginx.com</para>
1161832Smax.romanov@nginx.com</change>
1171832Smax.romanov@nginx.com
1181832Smax.romanov@nginx.com<change type="bugfix">
1191832Smax.romanov@nginx.com<para>
1201833Sartem.konev@nginx.coma descriptor leak occurred in the router process when removing or
1211811Smax.romanov@nginx.comreconfiguring an application; the bug had appeared in 1.19.0.
1221811Smax.romanov@nginx.com</para>
1231811Smax.romanov@nginx.com</change>
1241806Svbart@nginx.com
1251813Svbart@nginx.com<change type="bugfix">
1261813Svbart@nginx.com<para>
1271813Svbart@nginx.compersistent storage of certificates might've not worked with some filesystems in
1281813Svbart@nginx.comLinux, and all uploaded certificate bundles were forgotten after restart.
1291813Svbart@nginx.com</para>
1301813Svbart@nginx.com</change>
1311813Svbart@nginx.com
1321814Svbart@nginx.com<change type="bugfix">
1331814Svbart@nginx.com<para>
1341820Svbart@nginx.comthe controller process could crash while requesting information about a
1351820Svbart@nginx.comcertificate with a non-DNS SAN entry.
1361820Svbart@nginx.com</para>
1371820Svbart@nginx.com</change>
1381820Svbart@nginx.com
1391820Svbart@nginx.com<change type="bugfix">
1401820Svbart@nginx.com<para>
1411822Svbart@nginx.comthe controller process could crash on manipulations with a certificate
1421833Sartem.konev@nginx.comcontaining a SAN and no standard name attributes in subject or issuer.
1431822Svbart@nginx.com</para>
1441822Svbart@nginx.com</change>
1451822Svbart@nginx.com
1461822Svbart@nginx.com<change type="bugfix">
1471822Svbart@nginx.com<para>
1481833Sartem.konev@nginx.comthe Ruby module didn't respect the user locale for defaults in the Encoding
1491833Sartem.konev@nginx.comclass.
1501814Svbart@nginx.com</para>
1511814Svbart@nginx.com</change>
1521814Svbart@nginx.com
1531815Svbart@nginx.com<change type="bugfix">
1541815Svbart@nginx.com<para>
1551815Svbart@nginx.comthe PHP 5 module failed to build with thread safety enabled; the bug had
1561815Svbart@nginx.comappeared in 1.22.0.
1571815Svbart@nginx.com</para>
1581815Svbart@nginx.com</change>
1591815Svbart@nginx.com
1601806Svbart@nginx.com</changes>
1611806Svbart@nginx.com
1621806Svbart@nginx.com
1631798Sdefan@nginx.com<changes apply="unit-python3.9" ver="1.22.0" rev="1"
1641798Sdefan@nginx.com         date="2021-02-04" time="18:00:00 +0300"
1651798Sdefan@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
1661798Sdefan@nginx.com
1671798Sdefan@nginx.com<change>
1681798Sdefan@nginx.com<para>
1691798Sdefan@nginx.comInitial release of Python 3.9 module for NGINX Unit.
1701798Sdefan@nginx.com</para>
1711798Sdefan@nginx.com</change>
1721798Sdefan@nginx.com
1731798Sdefan@nginx.com</changes>
1741798Sdefan@nginx.com
1751798Sdefan@nginx.com
1761763Sdefan@nginx.com<changes apply="unit-php
1771763Sdefan@nginx.com                unit-python unit-python2.7
1781763Sdefan@nginx.com                unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7
1791763Sdefan@nginx.com                unit-python3.8
1801763Sdefan@nginx.com                unit-go
1811763Sdefan@nginx.com                unit-perl
1821763Sdefan@nginx.com                unit-ruby
1831763Sdefan@nginx.com                unit-jsc-common unit-jsc8 unit-jsc10 unit-jsc11 unit-jsc13
1841763Sdefan@nginx.com                unit-jsc14 unit-jsc15"
1851763Sdefan@nginx.com         ver="1.22.0" rev="1"
1861793Svbart@nginx.com         date="2021-02-04" time="18:00:00 +0300"
1871763Sdefan@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
1881763Sdefan@nginx.com
1891763Sdefan@nginx.com<change>
1901763Sdefan@nginx.com<para>
1911763Sdefan@nginx.comNGINX Unit updated to 1.22.0.
1921763Sdefan@nginx.com</para>
1931763Sdefan@nginx.com</change>
1941763Sdefan@nginx.com
1951763Sdefan@nginx.com</changes>
1961763Sdefan@nginx.com
1971763Sdefan@nginx.com
1981727Svbart@nginx.com<changes apply="unit" ver="1.22.0" rev="1"
1991793Svbart@nginx.com         date="2021-02-04" time="18:00:00 +0300"
2001727Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
2011727Svbart@nginx.com
2021759Svbart@nginx.com<change type="feature">
2031759Svbart@nginx.com<para>
2041792Svbart@nginx.comthe ServerRequest and ServerResponse objects of Node.js module are now
2051792Svbart@nginx.comcompliant with Stream API.
2061759Svbart@nginx.com</para>
2071759Svbart@nginx.com</change>
2081759Svbart@nginx.com
2091766Smax.romanov@nginx.com<change type="feature">
2101766Smax.romanov@nginx.com<para>
2111792Svbart@nginx.comsupport for specifying multiple directories in the "path" option of Python
2121792Svbart@nginx.comapps.
2131732Svbart@nginx.com</para>
2141732Svbart@nginx.com</change>
2151732Svbart@nginx.com
2161733Svbart@nginx.com<change type="bugfix">
2171733Svbart@nginx.com<para>
2181792Svbart@nginx.coma memory leak occurred in the router process when serving files larger than
2191792Svbart@nginx.com128K; the bug had appeared in 1.13.0.
2201754Smax.romanov@nginx.com</para>
2211754Smax.romanov@nginx.com</change>
2221754Smax.romanov@nginx.com
2231755Smax.romanov@nginx.com<change type="bugfix">
2241755Smax.romanov@nginx.com<para>
2251790Sartem.konev@nginx.comapps could stop processing new requests under high load; the bug had
2261755Smax.romanov@nginx.comappeared in 1.19.0.
2271755Smax.romanov@nginx.com</para>
2281755Smax.romanov@nginx.com</change>
2291755Smax.romanov@nginx.com
2301756Smax.romanov@nginx.com<change type="bugfix">
2311756Smax.romanov@nginx.com<para>
2321790Sartem.konev@nginx.comapp processes could terminate unexpectedly under high load; the bug had
2331790Sartem.konev@nginx.comappeared in 1.19.0.
2341756Smax.romanov@nginx.com</para>
2351756Smax.romanov@nginx.com</change>
2361756Smax.romanov@nginx.com
2371760Smax.romanov@nginx.com<change type="bugfix">
2381760Smax.romanov@nginx.com<para>
2391792Svbart@nginx.cominvalid HTTP responses were generated for some unusual status codes.
2401792Svbart@nginx.com</para>
2411792Svbart@nginx.com</change>
2421792Svbart@nginx.com
2431792Svbart@nginx.com<change type="bugfix">
2441792Svbart@nginx.com<para>
2451792Svbart@nginx.comthe PHP_AUTH_USER, PHP_AUTH_PW, and PHP_AUTH_DIGEST server variables were
2461792Svbart@nginx.commissing in the PHP module.
2471792Svbart@nginx.com</para>
2481792Svbart@nginx.com</change>
2491792Svbart@nginx.com
2501792Svbart@nginx.com<change type="bugfix">
2511792Svbart@nginx.com<para>
2521792Svbart@nginx.comthe router process could crash with multithreaded apps under high load.
2531792Svbart@nginx.com</para>
2541792Svbart@nginx.com</change>
2551792Svbart@nginx.com
2561792Svbart@nginx.com<change type="bugfix">
2571792Svbart@nginx.com<para>
2581792Svbart@nginx.comRuby apps with multithreading configured could crash on start under load.
2591792Svbart@nginx.com</para>
2601792Svbart@nginx.com</change>
2611792Svbart@nginx.com
2621792Svbart@nginx.com<change type="bugfix">
2631792Svbart@nginx.com<para>
2641792Svbart@nginx.commount points weren't unmounted when the "mount" namespace isolation was used;
2651792Svbart@nginx.comthe bug had appeared in 1.21.0.
2661760Smax.romanov@nginx.com</para>
2671760Smax.romanov@nginx.com</change>
2681760Smax.romanov@nginx.com
2691780Smax.romanov@nginx.com<change type="bugfix">
2701780Smax.romanov@nginx.com<para>
2711790Sartem.konev@nginx.comthe router process could crash while removing or reconfiguring an app that used
2721790Sartem.konev@nginx.comWebSocket.
2731780Smax.romanov@nginx.com</para>
2741780Smax.romanov@nginx.com</change>
2751780Smax.romanov@nginx.com
2761789Smax.romanov@nginx.com<change type="bugfix">
2771789Smax.romanov@nginx.com<para>
2781789Smax.romanov@nginx.coma memory leak occurring in the router process when removing or reconfiguring
2791789Smax.romanov@nginx.coman application; the bug had appeared in 1.19.0.
2801789Smax.romanov@nginx.com</para>
2811789Smax.romanov@nginx.com</change>
2821789Smax.romanov@nginx.com
2831727Svbart@nginx.com</changes>
2841727Svbart@nginx.com
2851727Svbart@nginx.com
2861722Svbart@nginx.com<changes apply="unit-jsc15" ver="1.21.0" rev="1"
2871722Svbart@nginx.com         date="2020-11-19" time="18:00:00 +0300"
2881722Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
2891722Svbart@nginx.com
2901722Svbart@nginx.com<change>
2911722Svbart@nginx.com<para>
2921722Svbart@nginx.comInitial release of Java 15 module for NGINX Unit.
2931722Svbart@nginx.com</para>
2941722Svbart@nginx.com</change>
2951722Svbart@nginx.com
2961722Svbart@nginx.com</changes>
2971722Svbart@nginx.com
2981722Svbart@nginx.com
2991722Svbart@nginx.com<changes apply="unit-jsc14" ver="1.21.0" rev="1"
3001722Svbart@nginx.com         date="2020-11-19" time="18:00:00 +0300"
3011722Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
3021722Svbart@nginx.com
3031722Svbart@nginx.com<change>
3041722Svbart@nginx.com<para>
3051722Svbart@nginx.comInitial release of Java 14 module for NGINX Unit.
3061722Svbart@nginx.com</para>
3071722Svbart@nginx.com</change>
3081722Svbart@nginx.com
3091722Svbart@nginx.com</changes>
3101722Svbart@nginx.com
3111722Svbart@nginx.com
3121722Svbart@nginx.com<changes apply="unit-jsc13" ver="1.21.0" rev="1"
3131722Svbart@nginx.com         date="2020-11-19" time="18:00:00 +0300"
3141722Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
3151722Svbart@nginx.com
3161722Svbart@nginx.com<change>
3171722Svbart@nginx.com<para>
3181722Svbart@nginx.comInitial release of Java 13 module for NGINX Unit.
3191722Svbart@nginx.com</para>
3201722Svbart@nginx.com</change>
3211722Svbart@nginx.com
3221722Svbart@nginx.com</changes>
3231722Svbart@nginx.com
3241722Svbart@nginx.com
3251722Svbart@nginx.com<changes apply="unit-php
3261722Svbart@nginx.com                unit-python unit-python2.7
3271722Svbart@nginx.com                unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7
3281722Svbart@nginx.com                unit-python3.8
3291722Svbart@nginx.com                unit-go
3301722Svbart@nginx.com                unit-perl
3311722Svbart@nginx.com                unit-ruby
3321722Svbart@nginx.com                unit-jsc-common unit-jsc8 unit-jsc10 unit-jsc11"
3331722Svbart@nginx.com         ver="1.21.0" rev="1"
3341722Svbart@nginx.com         date="2020-11-19" time="18:00:00 +0300"
3351722Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
3361722Svbart@nginx.com
3371722Svbart@nginx.com<change>
3381722Svbart@nginx.com<para>
3391722Svbart@nginx.comNGINX Unit updated to 1.21.0.
3401722Svbart@nginx.com</para>
3411722Svbart@nginx.com</change>
3421722Svbart@nginx.com
3431722Svbart@nginx.com</changes>
3441722Svbart@nginx.com
3451722Svbart@nginx.com
3461722Svbart@nginx.com<changes apply="unit" ver="1.21.0" rev="1"
3471722Svbart@nginx.com         date="2020-11-19" time="18:00:00 +0300"
3481722Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
3491722Svbart@nginx.com
3501722Svbart@nginx.com<change type="change">
3511722Svbart@nginx.com<para>
3521722Svbart@nginx.comprocfs is mounted by default for all languages when "rootfs" isolation is used.
3531722Svbart@nginx.com</para>
3541722Svbart@nginx.com</change>
3551722Svbart@nginx.com
3561722Svbart@nginx.com<change type="change">
3571722Svbart@nginx.com<para>
3581722Svbart@nginx.comany characters valid according to RFC 7230 are now allowed in HTTP header field
3591722Svbart@nginx.comnames.
3601722Svbart@nginx.com</para>
3611722Svbart@nginx.com</change>
3621722Svbart@nginx.com
3631722Svbart@nginx.com<change type="change">
3641722Svbart@nginx.com<para>
3651722Svbart@nginx.comHTTP header fields with underscores ("_") are now discarded from requests by
3661722Svbart@nginx.comdefault.
3671722Svbart@nginx.com</para>
3681722Svbart@nginx.com</change>
3691722Svbart@nginx.com
3701722Svbart@nginx.com<change type="feature">
3711722Svbart@nginx.com<para>
3721722Svbart@nginx.comoptional multithreaded request processing for Java, Python, Perl, and Ruby apps.
3731722Svbart@nginx.com</para>
3741722Svbart@nginx.com</change>
3751722Svbart@nginx.com
3761722Svbart@nginx.com<change type="feature">
3771722Svbart@nginx.com<para>
3781722Svbart@nginx.comregular expressions in route matching patterns.
3791722Svbart@nginx.com</para>
3801722Svbart@nginx.com</change>
3811722Svbart@nginx.com
3821722Svbart@nginx.com<change type="feature">
3831722Svbart@nginx.com<para>
3841722Svbart@nginx.comcompatibility with Python 3.9.
3851722Svbart@nginx.com</para>
3861722Svbart@nginx.com</change>
3871722Svbart@nginx.com
3881722Svbart@nginx.com<change type="feature">
3891722Svbart@nginx.com<para>
3901722Svbart@nginx.comthe Python module now supports ASGI 2.0 legacy applications.
3911722Svbart@nginx.com</para>
3921722Svbart@nginx.com</change>
3931722Svbart@nginx.com
3941722Svbart@nginx.com<change type="feature">
3951722Svbart@nginx.com<para>
3961722Svbart@nginx.comthe "protocol" option in Python applications aids choice between ASGI and WSGI.
3971722Svbart@nginx.com</para>
3981722Svbart@nginx.com</change>
3991722Svbart@nginx.com
4001722Svbart@nginx.com<change type="feature">
4011722Svbart@nginx.com<para>
4021722Svbart@nginx.comthe fastcgi_finish_request() PHP function that finalizes request processing and
4031722Svbart@nginx.comcontinues code execution without holding onto the client connection.
4041722Svbart@nginx.com</para>
4051722Svbart@nginx.com</change>
4061722Svbart@nginx.com
4071722Svbart@nginx.com<change type="feature">
4081722Svbart@nginx.com<para>
4091722Svbart@nginx.comthe "discard_unsafe_fields" HTTP option that enables discarding request header
4101722Svbart@nginx.comfields with irregular (but still valid) characters in the field name.
4111722Svbart@nginx.com</para>
4121722Svbart@nginx.com</change>
4131722Svbart@nginx.com
4141722Svbart@nginx.com<change type="feature">
4151722Svbart@nginx.com<para>
4161722Svbart@nginx.comthe "procfs" and "tmpfs" automount isolation options to disable automatic
4171722Svbart@nginx.commounting of eponymous filesystems.
4181722Svbart@nginx.com</para>
4191722Svbart@nginx.com</change>
4201722Svbart@nginx.com
4211722Svbart@nginx.com<change type="bugfix">
4221722Svbart@nginx.com<para>
4231722Svbart@nginx.comthe router process could crash when running Go applications under high load;
4241722Svbart@nginx.comthe bug had appeared in 1.19.0.
4251722Svbart@nginx.com</para>
4261722Svbart@nginx.com</change>
4271722Svbart@nginx.com
4281722Svbart@nginx.com<change type="bugfix">
4291722Svbart@nginx.com<para>
4301722Svbart@nginx.comsome language dependencies could remain mounted after using "rootfs" isolation.
4311722Svbart@nginx.com</para>
4321722Svbart@nginx.com</change>
4331722Svbart@nginx.com
4341722Svbart@nginx.com<change type="bugfix">
4351722Svbart@nginx.com<para>
4361722Svbart@nginx.comvarious compatibility issues in Java applications.
4371722Svbart@nginx.com</para>
4381722Svbart@nginx.com</change>
4391722Svbart@nginx.com
4401722Svbart@nginx.com<change type="bugfix">
4411722Svbart@nginx.com<para>
4421722Svbart@nginx.comthe Java module built with the musl C library couldn't run applications that
4431722Svbart@nginx.comuse "rootfs" isolation.
4441722Svbart@nginx.com</para>
4451722Svbart@nginx.com</change>
4461722Svbart@nginx.com
4471722Svbart@nginx.com</changes>
4481722Svbart@nginx.com
4491722Svbart@nginx.com
4501330Svbart@nginx.com<changes apply="unit-php
4511330Svbart@nginx.com                unit-python unit-python2.7
4521330Svbart@nginx.com                unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7
4531330Svbart@nginx.com                unit-python3.8
4541330Svbart@nginx.com                unit-go
4551330Svbart@nginx.com                unit-perl
4561330Svbart@nginx.com                unit-ruby
4571330Svbart@nginx.com                unit-jsc-common unit-jsc8 unit-jsc10 unit-jsc11"
4581640Svbart@nginx.com         ver="1.20.0" rev="1"
4591640Svbart@nginx.com         date="2020-10-08" time="18:00:00 +0300"
4601640Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
4611640Svbart@nginx.com
4621640Svbart@nginx.com<change>
4631640Svbart@nginx.com<para>
4641640Svbart@nginx.comNGINX Unit updated to 1.20.0.
4651640Svbart@nginx.com</para>
4661640Svbart@nginx.com</change>
4671640Svbart@nginx.com
4681640Svbart@nginx.com</changes>
4691640Svbart@nginx.com
4701640Svbart@nginx.com
4711640Svbart@nginx.com<changes apply="unit" ver="1.20.0" rev="1"
4721640Svbart@nginx.com         date="2020-10-08" time="18:00:00 +0300"
4731640Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
4741640Svbart@nginx.com
4751640Svbart@nginx.com<change type="change">
4761640Svbart@nginx.com<para>
4771640Svbart@nginx.comthe PHP module is now initialized before chrooting; this enables loading all
4781640Svbart@nginx.comextensions from the host system.
4791640Svbart@nginx.com</para>
4801640Svbart@nginx.com</change>
4811640Svbart@nginx.com
4821640Svbart@nginx.com<change type="change">
4831640Svbart@nginx.com<para>
4841640Svbart@nginx.comAVIF and APNG image formats added to the default MIME type list.
4851640Svbart@nginx.com</para>
4861640Svbart@nginx.com</change>
4871640Svbart@nginx.com
4881643Svbart@nginx.com<change type="change">
4891643Svbart@nginx.com<para>
4901643Svbart@nginx.comfunctional tests migrated to the pytest framework.
4911643Svbart@nginx.com</para>
4921643Svbart@nginx.com</change>
4931643Svbart@nginx.com
4941640Svbart@nginx.com<change type="feature">
4951640Svbart@nginx.com<para>
4961640Svbart@nginx.comthe Python module now fully supports applications that use the ASGI 3.0 server
4971640Svbart@nginx.cominterface.
4981640Svbart@nginx.com</para>
4991640Svbart@nginx.com</change>
5001640Svbart@nginx.com
5011640Svbart@nginx.com<change type="feature">
5021640Svbart@nginx.com<para>
5031640Svbart@nginx.comthe Python module now has a built-in WebSocket server implementation for
5041640Svbart@nginx.comapplications, compatible with the HTTP &amp; WebSocket ASGI Message Format 2.1
5051640Svbart@nginx.comspecification.
5061640Svbart@nginx.com</para>
5071640Svbart@nginx.com</change>
5081640Svbart@nginx.com
5091640Svbart@nginx.com<change type="feature">
5101640Svbart@nginx.com<para>
5111640Svbart@nginx.comautomatic mounting of an isolated "/tmp" file system into chrooted application
5121640Svbart@nginx.comenvironments.
5131640Svbart@nginx.com</para>
5141640Svbart@nginx.com</change>
5151640Svbart@nginx.com
5161640Svbart@nginx.com<change type="feature">
5171640Svbart@nginx.com<para>
5181640Svbart@nginx.comthe $host variable contains a normalized "Host" request value.
5191640Svbart@nginx.com</para>
5201640Svbart@nginx.com</change>
5211640Svbart@nginx.com
5221640Svbart@nginx.com<change type="feature">
5231640Svbart@nginx.com<para>
5241640Svbart@nginx.comthe "callable" option sets Python application callable names.
5251640Svbart@nginx.com</para>
5261640Svbart@nginx.com</change>
5271640Svbart@nginx.com
5281640Svbart@nginx.com<change type="feature">
5291640Svbart@nginx.com<para>
5301640Svbart@nginx.comcompatibility with PHP 8 RC 1. Thanks to Remi Collet.
5311640Svbart@nginx.com</para>
5321640Svbart@nginx.com</change>
5331640Svbart@nginx.com
5341640Svbart@nginx.com<change type="feature">
5351640Svbart@nginx.com<para>
5361640Svbart@nginx.comthe "automount" option in the "isolation" object allows to turn off the
5371640Svbart@nginx.comautomatic mounting of language module dependencies.
5381640Svbart@nginx.com</para>
5391640Svbart@nginx.com</change>
5401640Svbart@nginx.com
5411640Svbart@nginx.com<change type="bugfix">
5421640Svbart@nginx.com<para>
5431640Svbart@nginx.com"pass"-ing requests to upstreams from a route was broken; the bug had appeared
5441640Svbart@nginx.comin 1.19.0.  Thanks to 洪志道 (Hong Zhi Dao) for discovering and fixing it.
5451640Svbart@nginx.com</para>
5461640Svbart@nginx.com</change>
5471640Svbart@nginx.com
5481640Svbart@nginx.com<change type="bugfix">
5491640Svbart@nginx.com<para>
5501640Svbart@nginx.comthe router process could crash during reconfiguration.
5511640Svbart@nginx.com</para>
5521640Svbart@nginx.com</change>
5531640Svbart@nginx.com
5541640Svbart@nginx.com<change type="bugfix">
5551640Svbart@nginx.com<para>
5561640Svbart@nginx.coma memory leak occurring in the router process; the bug had appeared in 1.18.0.
5571640Svbart@nginx.com</para>
5581640Svbart@nginx.com</change>
5591640Svbart@nginx.com
5601640Svbart@nginx.com<change type="bugfix">
5611640Svbart@nginx.com<para>
5621640Svbart@nginx.comthe "!" (non-empty) pattern was matched incorrectly;
5631640Svbart@nginx.comthe bug had appeared in 1.19.0.
5641640Svbart@nginx.com</para>
5651640Svbart@nginx.com</change>
5661640Svbart@nginx.com
5671640Svbart@nginx.com<change type="bugfix">
5681640Svbart@nginx.com<para>
5691640Svbart@nginx.comfixed building on platforms without sendfile() support, notably NetBSD;
5701640Svbart@nginx.comthe bug had appeared in 1.16.0.
5711640Svbart@nginx.com</para>
5721640Svbart@nginx.com</change>
5731640Svbart@nginx.com
5741640Svbart@nginx.com</changes>
5751640Svbart@nginx.com
5761640Svbart@nginx.com
5771640Svbart@nginx.com<changes apply="unit-php
5781640Svbart@nginx.com                unit-python unit-python2.7
5791640Svbart@nginx.com                unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7
5801640Svbart@nginx.com                unit-python3.8
5811640Svbart@nginx.com                unit-go
5821640Svbart@nginx.com                unit-perl
5831640Svbart@nginx.com                unit-ruby
5841640Svbart@nginx.com                unit-jsc-common unit-jsc8 unit-jsc10 unit-jsc11"
5851570Svbart@nginx.com         ver="1.19.0" rev="1"
5861570Svbart@nginx.com         date="2020-08-13" time="18:00:00 +0300"
5871570Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
5881570Svbart@nginx.com
5891570Svbart@nginx.com<change>
5901570Svbart@nginx.com<para>
5911570Svbart@nginx.comNGINX Unit updated to 1.19.0.
5921570Svbart@nginx.com</para>
5931570Svbart@nginx.com</change>
5941570Svbart@nginx.com
5951570Svbart@nginx.com</changes>
5961570Svbart@nginx.com
5971570Svbart@nginx.com
5981570Svbart@nginx.com<changes apply="unit" ver="1.19.0" rev="1"
5991570Svbart@nginx.com         date="2020-08-13" time="18:00:00 +0300"
6001570Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
6011570Svbart@nginx.com
6021570Svbart@nginx.com<change type="feature">
6031570Svbart@nginx.com<para>
6041570Svbart@nginx.comreworked IPC between the router process and the applications to lower latencies,
6051570Svbart@nginx.comincrease performance, and improve scalability.
6061570Svbart@nginx.com</para>
6071570Svbart@nginx.com</change>
6081570Svbart@nginx.com
6091570Svbart@nginx.com<change type="feature">
6101570Svbart@nginx.com<para>
6111570Svbart@nginx.comsupport for an arbitrary number of wildcards in route matching patterns.
6121570Svbart@nginx.com</para>
6131570Svbart@nginx.com</change>
6141570Svbart@nginx.com
6151570Svbart@nginx.com<change type="feature">
6161570Svbart@nginx.com<para>
6171570Svbart@nginx.comchunked transfer encoding in proxy responses.
6181570Svbart@nginx.com</para>
6191570Svbart@nginx.com</change>
6201570Svbart@nginx.com
6211570Svbart@nginx.com<change type="feature">
6221570Svbart@nginx.com<para>
6231570Svbart@nginx.combasic variables support in the "pass" option.
6241570Svbart@nginx.com</para>
6251570Svbart@nginx.com</change>
6261570Svbart@nginx.com
6271570Svbart@nginx.com<change type="feature">
6281570Svbart@nginx.com<para>
6291570Svbart@nginx.comcompatibility with PHP 8 Beta 1.
6301570Svbart@nginx.comThanks to Remi Collet.
6311570Svbart@nginx.com</para>
6321570Svbart@nginx.com</change>
6331570Svbart@nginx.com
6341570Svbart@nginx.com<change type="bugfix">
6351570Svbart@nginx.com<para>
6361570Svbart@nginx.comthe router process could crash while passing requests to an application under
6371570Svbart@nginx.comhigh load.
6381570Svbart@nginx.com</para>
6391570Svbart@nginx.com</change>
6401570Svbart@nginx.com
6411570Svbart@nginx.com<change type="bugfix">
6421570Svbart@nginx.com<para>
6431570Svbart@nginx.coma number of language modules failed to build on some systems;
6441570Svbart@nginx.comthe bug had appeared in 1.18.0.
6451570Svbart@nginx.com</para>
6461570Svbart@nginx.com</change>
6471570Svbart@nginx.com
6481570Svbart@nginx.com<change type="bugfix">
6491570Svbart@nginx.com<para>
6501570Svbart@nginx.comtime in error log messages from PHP applications could lag.
6511570Svbart@nginx.com</para>
6521570Svbart@nginx.com</change>
6531570Svbart@nginx.com
6541570Svbart@nginx.com<change type="bugfix">
6551570Svbart@nginx.com<para>
6561570Svbart@nginx.comreconfiguration requests could hang if an application had failed to start;
6571570Svbart@nginx.comthe bug had appeared in 1.18.0.
6581570Svbart@nginx.com</para>
6591570Svbart@nginx.com</change>
6601570Svbart@nginx.com
6611570Svbart@nginx.com<change type="bugfix">
6621570Svbart@nginx.com<para>
6631570Svbart@nginx.commemory leak during reconfiguration.
6641570Svbart@nginx.com</para>
6651570Svbart@nginx.com</change>
6661570Svbart@nginx.com
6671570Svbart@nginx.com<change type="bugfix">
6681570Svbart@nginx.com<para>
6691570Svbart@nginx.comthe daemon didn't start without language modules;
6701570Svbart@nginx.comthe bug had appeared in 1.18.0.
6711570Svbart@nginx.com</para>
6721570Svbart@nginx.com</change>
6731570Svbart@nginx.com
6741570Svbart@nginx.com<change type="bugfix">
6751570Svbart@nginx.com<para>
6761570Svbart@nginx.comthe router process could crash at exit.
6771570Svbart@nginx.com</para>
6781570Svbart@nginx.com</change>
6791570Svbart@nginx.com
6801570Svbart@nginx.com<change type="bugfix">
6811570Svbart@nginx.com<para>
6821570Svbart@nginx.comNode.js applications could crash at exit.
6831570Svbart@nginx.com</para>
6841570Svbart@nginx.com</change>
6851570Svbart@nginx.com
6861570Svbart@nginx.com<change type="bugfix">
6871570Svbart@nginx.com<para>
6881570Svbart@nginx.comthe Ruby module could be linked against a wrong library version.
6891570Svbart@nginx.com</para>
6901570Svbart@nginx.com</change>
6911570Svbart@nginx.com
6921570Svbart@nginx.com</changes>
6931570Svbart@nginx.com
6941570Svbart@nginx.com
6951570Svbart@nginx.com<changes apply="unit-php
6961570Svbart@nginx.com                unit-python unit-python2.7
6971570Svbart@nginx.com                unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7
6981570Svbart@nginx.com                unit-python3.8
6991570Svbart@nginx.com                unit-go
7001570Svbart@nginx.com                unit-perl
7011570Svbart@nginx.com                unit-ruby
7021570Svbart@nginx.com                unit-jsc-common unit-jsc8 unit-jsc10 unit-jsc11"
7031491Svbart@nginx.com         ver="1.18.0" rev="1"
7041491Svbart@nginx.com         date="2020-05-28" time="18:00:00 +0300"
7051491Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
7061491Svbart@nginx.com
7071491Svbart@nginx.com<change>
7081491Svbart@nginx.com<para>
7091491Svbart@nginx.comNGINX Unit updated to 1.18.0.
7101491Svbart@nginx.com</para>
7111491Svbart@nginx.com</change>
7121491Svbart@nginx.com
7131491Svbart@nginx.com</changes>
7141491Svbart@nginx.com
7151491Svbart@nginx.com
7161491Svbart@nginx.com<changes apply="unit" ver="1.18.0" rev="1"
7171491Svbart@nginx.com         date="2020-05-28" time="18:00:00 +0300"
7181491Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
7191491Svbart@nginx.com
7201491Svbart@nginx.com<change type="feature">
7211491Svbart@nginx.com<para>
7221491Svbart@nginx.comthe "rootfs" isolation option for changing root filesystem for an application.
7231491Svbart@nginx.com</para>
7241491Svbart@nginx.com</change>
7251491Svbart@nginx.com
7261491Svbart@nginx.com<change type="feature">
7271491Svbart@nginx.com<para>
7281491Svbart@nginx.commultiple "targets" in PHP applications.
7291491Svbart@nginx.com</para>
7301491Svbart@nginx.com</change>
7311491Svbart@nginx.com
7321491Svbart@nginx.com<change type="feature">
7331491Svbart@nginx.com<para>
7341491Svbart@nginx.comsupport for percent-encoding in the "uri" and "arguments" matching options
7351491Svbart@nginx.comand in the "pass" option.
7361491Svbart@nginx.com</para>
7371491Svbart@nginx.com</change>
7381491Svbart@nginx.com
7391491Svbart@nginx.com</changes>
7401491Svbart@nginx.com
7411491Svbart@nginx.com
7421491Svbart@nginx.com<changes apply="unit-php
7431491Svbart@nginx.com                unit-python unit-python2.7
7441491Svbart@nginx.com                unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7
7451491Svbart@nginx.com                unit-python3.8
7461491Svbart@nginx.com                unit-go
7471491Svbart@nginx.com                unit-perl
7481491Svbart@nginx.com                unit-ruby
7491491Svbart@nginx.com                unit-jsc-common unit-jsc8 unit-jsc10 unit-jsc11"
7501460Svbart@nginx.com         ver="1.17.0" rev="1"
7511460Svbart@nginx.com         date="2020-04-16" time="18:00:00 +0300"
7521460Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
7531460Svbart@nginx.com
7541460Svbart@nginx.com<change>
7551460Svbart@nginx.com<para>
7561460Svbart@nginx.comNGINX Unit updated to 1.17.0.
7571460Svbart@nginx.com</para>
7581460Svbart@nginx.com</change>
7591460Svbart@nginx.com
7601460Svbart@nginx.com</changes>
7611460Svbart@nginx.com
7621460Svbart@nginx.com
7631460Svbart@nginx.com<changes apply="unit" ver="1.17.0" rev="1"
7641460Svbart@nginx.com         date="2020-04-16" time="18:00:00 +0300"
7651460Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
7661460Svbart@nginx.com
7671460Svbart@nginx.com<change type="feature">
7681460Svbart@nginx.com<para>
7691460Svbart@nginx.coma "return" action with optional "location" for immediate responses and external
7701460Svbart@nginx.comredirection.
7711460Svbart@nginx.com</para>
7721460Svbart@nginx.com</change>
7731460Svbart@nginx.com
7741460Svbart@nginx.com<change type="feature">
7751460Svbart@nginx.com<para>
7761460Svbart@nginx.comfractional weights support for upstream servers.
7771460Svbart@nginx.com</para>
7781460Svbart@nginx.com</change>
7791460Svbart@nginx.com
7801460Svbart@nginx.com<change type="bugfix">
7811460Svbart@nginx.com<para>
7821460Svbart@nginx.comaccidental 502 "Bad Gateway" errors might have occurred in applications under
7831460Svbart@nginx.comhigh load.
7841460Svbart@nginx.com</para>
7851460Svbart@nginx.com</change>
7861460Svbart@nginx.com
7871460Svbart@nginx.com<change type="bugfix">
7881460Svbart@nginx.com<para>
7891460Svbart@nginx.commemory leak in the router; the bug had appeared in 1.13.0.
7901460Svbart@nginx.com</para>
7911460Svbart@nginx.com</change>
7921460Svbart@nginx.com
7931460Svbart@nginx.com<change type="bugfix">
7941460Svbart@nginx.com<para>
7951460Svbart@nginx.comsegmentation fault might have occurred in the router process when reaching
7961460Svbart@nginx.comopen connections limit.
7971460Svbart@nginx.com</para>
7981460Svbart@nginx.com</change>
7991460Svbart@nginx.com
8001460Svbart@nginx.com<change type="bugfix">
8011460Svbart@nginx.com<para>
8021460Svbart@nginx.com"close() failed (9: Bad file descriptor)" alerts might have appeared in the log
8031460Svbart@nginx.comwhile processing large request bodies; the bug had appeared in 1.16.0.
8041460Svbart@nginx.com</para>
8051460Svbart@nginx.com</change>
8061460Svbart@nginx.com
8071460Svbart@nginx.com<change type="bugfix">
8081460Svbart@nginx.com<para>
8091460Svbart@nginx.comexisting application processes didn't reopen the log file.
8101460Svbart@nginx.com</para>
8111460Svbart@nginx.com</change>
8121460Svbart@nginx.com
8131460Svbart@nginx.com<change type="bugfix">
8141460Svbart@nginx.com<para>
8151460Svbart@nginx.comincompatibility with some Node.js applications.
8161460Svbart@nginx.com</para>
8171460Svbart@nginx.com</change>
8181460Svbart@nginx.com
8191460Svbart@nginx.com<change type="bugfix">
8201460Svbart@nginx.com<para>
8211460Svbart@nginx.combroken build on DragonFly BSD; the bug had appeared in 1.16.0.
8221460Svbart@nginx.com</para>
8231460Svbart@nginx.com</change>
8241460Svbart@nginx.com
8251460Svbart@nginx.com</changes>
8261460Svbart@nginx.com
8271460Svbart@nginx.com
8281460Svbart@nginx.com<changes apply="unit-php
8291460Svbart@nginx.com                unit-python unit-python2.7
8301460Svbart@nginx.com                unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7
8311460Svbart@nginx.com                unit-python3.8
8321460Svbart@nginx.com                unit-go
8331460Svbart@nginx.com                unit-perl
8341460Svbart@nginx.com                unit-ruby
8351460Svbart@nginx.com                unit-jsc-common unit-jsc8 unit-jsc10 unit-jsc11"
8361404Svbart@nginx.com         ver="1.16.0" rev="1"
8371404Svbart@nginx.com         date="2020-03-12" time="18:00:00 +0300"
8381404Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
8391404Svbart@nginx.com
8401404Svbart@nginx.com<change>
8411404Svbart@nginx.com<para>
8421404Svbart@nginx.comNGINX Unit updated to 1.16.0.
8431404Svbart@nginx.com</para>
8441404Svbart@nginx.com</change>
8451404Svbart@nginx.com
8461404Svbart@nginx.com</changes>
8471404Svbart@nginx.com
8481404Svbart@nginx.com
8491404Svbart@nginx.com<changes apply="unit" ver="1.16.0" rev="1"
8501404Svbart@nginx.com         date="2020-03-12" time="18:00:00 +0300"
8511404Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
8521404Svbart@nginx.com
8531404Svbart@nginx.com<change type="feature">
8541404Svbart@nginx.com<para>
8551404Svbart@nginx.combasic load-balancing support with round-robin.
8561404Svbart@nginx.com</para>
8571404Svbart@nginx.com</change>
8581404Svbart@nginx.com
8591404Svbart@nginx.com<change type="feature">
8601404Svbart@nginx.com<para>
8611404Svbart@nginx.coma "fallback" option that performs an alternative action if a request can't be
8621404Svbart@nginx.comserved from the "share" directory.
8631404Svbart@nginx.com</para>
8641404Svbart@nginx.com</change>
8651404Svbart@nginx.com
8661404Svbart@nginx.com<change type="feature">
8671404Svbart@nginx.com<para>
8681404Svbart@nginx.comreduced memory consumption by dumping large request bodies to disk.
8691404Svbart@nginx.com</para>
8701404Svbart@nginx.com</change>
8711404Svbart@nginx.com
8721404Svbart@nginx.com<change type="feature">
8731404Svbart@nginx.com<para>
8741404Svbart@nginx.comstripping UTF-8 BOM and JavaScript-style comments from uploaded JSON.
8751404Svbart@nginx.com</para>
8761404Svbart@nginx.com</change>
8771404Svbart@nginx.com
8781404Svbart@nginx.com<change type="bugfix">
8791404Svbart@nginx.com<para>
8801404Svbart@nginx.comnegative address matching in router might work improperly in combination with
8811404Svbart@nginx.comnon-negative patterns.
8821404Svbart@nginx.com</para>
8831404Svbart@nginx.com</change>
8841404Svbart@nginx.com
8851404Svbart@nginx.com<change type="bugfix">
8861404Svbart@nginx.com<para>
8871404Svbart@nginx.comJava Spring applications failed to run; the bug had appeared in 1.10.0.
8881404Svbart@nginx.com</para>
8891404Svbart@nginx.com</change>
8901404Svbart@nginx.com
8911404Svbart@nginx.com<change type="bugfix">
8921404Svbart@nginx.com<para>
8931404Svbart@nginx.comPHP 7.4 was broken if it was built with thread safety enabled.
8941404Svbart@nginx.com</para>
8951404Svbart@nginx.com</change>
8961404Svbart@nginx.com
8971404Svbart@nginx.com<change type="bugfix">
8981404Svbart@nginx.com<para>
8991404Svbart@nginx.comcompatibility issues with some Python applications.
9001404Svbart@nginx.com</para>
9011404Svbart@nginx.com</change>
9021404Svbart@nginx.com
9031404Svbart@nginx.com</changes>
9041404Svbart@nginx.com
9051404Svbart@nginx.com
9061404Svbart@nginx.com<changes apply="unit-php
9071404Svbart@nginx.com                unit-python unit-python2.7
9081404Svbart@nginx.com                unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7
9091404Svbart@nginx.com                unit-python3.8
9101404Svbart@nginx.com                unit-go
9111404Svbart@nginx.com                unit-perl
9121404Svbart@nginx.com                unit-ruby
9131404Svbart@nginx.com                unit-jsc-common unit-jsc8 unit-jsc10 unit-jsc11"
9141357Svbart@nginx.com         ver="1.15.0" rev="1"
9151357Svbart@nginx.com         date="2020-02-06" time="18:00:00 +0300"
9161357Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
9171357Svbart@nginx.com
9181357Svbart@nginx.com<change>
9191357Svbart@nginx.com<para>
9201357Svbart@nginx.comNGINX Unit updated to 1.15.0.
9211357Svbart@nginx.com</para>
9221357Svbart@nginx.com</change>
9231357Svbart@nginx.com
9241357Svbart@nginx.com</changes>
9251357Svbart@nginx.com
9261357Svbart@nginx.com
9271357Svbart@nginx.com<changes apply="unit" ver="1.15.0" rev="1"
9281357Svbart@nginx.com         date="2020-02-06" time="18:00:00 +0300"
9291357Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
9301357Svbart@nginx.com
9311357Svbart@nginx.com<change type="change">
9321357Svbart@nginx.com<para>
9331357Svbart@nginx.comextensions of dynamically requested PHP scripts were restricted to ".php".
9341357Svbart@nginx.com</para>
9351357Svbart@nginx.com</change>
9361357Svbart@nginx.com
9371357Svbart@nginx.com<change type="feature">
9381357Svbart@nginx.com<para>
9391357Svbart@nginx.comcompatibility with Ruby 2.7.
9401357Svbart@nginx.com</para>
9411357Svbart@nginx.com</change>
9421357Svbart@nginx.com
9431357Svbart@nginx.com<change type="bugfix">
9441357Svbart@nginx.com<para>
9451357Svbart@nginx.comsegmentation fault might have occurred in the router process with multiple
9461357Svbart@nginx.comapplication processes under load; the bug had appeared in 1.14.0.
9471357Svbart@nginx.com</para>
9481357Svbart@nginx.com</change>
9491357Svbart@nginx.com
9501357Svbart@nginx.com<change type="bugfix">
9511357Svbart@nginx.com<para>
9521357Svbart@nginx.comreceiving request body over TLS connection might have stalled.
9531357Svbart@nginx.com</para>
9541357Svbart@nginx.com</change>
9551357Svbart@nginx.com
9561357Svbart@nginx.com</changes>
9571357Svbart@nginx.com
9581357Svbart@nginx.com
9591357Svbart@nginx.com<changes apply="unit-php
9601357Svbart@nginx.com                unit-python unit-python2.7
9611357Svbart@nginx.com                unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7
9621357Svbart@nginx.com                unit-python3.8
9631357Svbart@nginx.com                unit-go
9641357Svbart@nginx.com                unit-perl
9651357Svbart@nginx.com                unit-ruby
9661357Svbart@nginx.com                unit-jsc-common unit-jsc8 unit-jsc10 unit-jsc11"
9671330Svbart@nginx.com         ver="1.14.0" rev="1"
9681330Svbart@nginx.com         date="2019-12-26" time="18:00:00 +0300"
9691330Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
9701330Svbart@nginx.com
9711330Svbart@nginx.com<change>
9721330Svbart@nginx.com<para>
9731330Svbart@nginx.comNGINX Unit updated to 1.14.0.
9741330Svbart@nginx.com</para>
9751330Svbart@nginx.com</change>
9761330Svbart@nginx.com
9771330Svbart@nginx.com</changes>
9781330Svbart@nginx.com
9791330Svbart@nginx.com
9801330Svbart@nginx.com<changes apply="unit" ver="1.14.0" rev="1"
9811330Svbart@nginx.com         date="2019-12-26" time="18:00:00 +0300"
9821330Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
9831330Svbart@nginx.com
9841330Svbart@nginx.com<change type="change">
9851330Svbart@nginx.com<para>
9861330Svbart@nginx.comthe Go package import name changed to "unit.nginx.org/go".
9871330Svbart@nginx.com</para>
9881330Svbart@nginx.com</change>
9891330Svbart@nginx.com
9901330Svbart@nginx.com<change type="change">
9911330Svbart@nginx.com<para>
9921330Svbart@nginx.comGo package now links to libunit instead of including library sources.
9931330Svbart@nginx.com</para>
9941330Svbart@nginx.com</change>
9951330Svbart@nginx.com
9961330Svbart@nginx.com<change type="feature">
9971330Svbart@nginx.com<para>
9981330Svbart@nginx.comability to change user and group for isolated applications when Unit daemon
9991330Svbart@nginx.comruns as an unprivileged user.
10001330Svbart@nginx.com</para>
10011330Svbart@nginx.com</change>
10021330Svbart@nginx.com
10031330Svbart@nginx.com<change type="feature">
10041330Svbart@nginx.com<para>
10051330Svbart@nginx.comrequest routing by source and destination addresses and ports.
10061330Svbart@nginx.com</para>
10071330Svbart@nginx.com</change>
10081330Svbart@nginx.com
10091330Svbart@nginx.com<change type="bugfix">
10101330Svbart@nginx.com<para>
10111330Svbart@nginx.commemory bloat on large responses.
10121330Svbart@nginx.com</para>
10131330Svbart@nginx.com</change>
10141330Svbart@nginx.com
10151330Svbart@nginx.com</changes>
10161330Svbart@nginx.com
10171330Svbart@nginx.com
10181290Sdefan@nginx.com<changes apply="unit-go1.13" ver="1.13.0" rev="1"
10191290Sdefan@nginx.com         date="2019-11-20" time="09:00:00 +0300"
10201290Sdefan@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
10211290Sdefan@nginx.com
10221290Sdefan@nginx.com<change>
10231290Sdefan@nginx.com<para>
10241290Sdefan@nginx.comInitial release of Go 1.13 module for NGINX Unit.
10251290Sdefan@nginx.com</para>
10261290Sdefan@nginx.com</change>
10271290Sdefan@nginx.com
10281290Sdefan@nginx.com</changes>
10291290Sdefan@nginx.com
10301290Sdefan@nginx.com
10311290Sdefan@nginx.com<changes apply="unit-go1.12" ver="1.13.0" rev="1"
10321290Sdefan@nginx.com         date="2019-11-20" time="09:00:00 +0300"
10331290Sdefan@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
10341290Sdefan@nginx.com
10351290Sdefan@nginx.com<change>
10361290Sdefan@nginx.com<para>
10371290Sdefan@nginx.comInitial release of Go 1.12 module for NGINX Unit.
10381290Sdefan@nginx.com</para>
10391290Sdefan@nginx.com</change>
10401290Sdefan@nginx.com
10411290Sdefan@nginx.com</changes>
10421290Sdefan@nginx.com
10431290Sdefan@nginx.com
10441289Sdefan@nginx.com<changes apply="unit-python3.8" ver="1.13.0" rev="1"
10451289Sdefan@nginx.com         date="2019-11-18" time="14:20:00 +0300"
10461289Sdefan@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
10471289Sdefan@nginx.com
10481289Sdefan@nginx.com<change>
10491289Sdefan@nginx.com<para>
10501289Sdefan@nginx.comInitial release of Python 3.8 module for NGINX Unit.
10511289Sdefan@nginx.com</para>
10521289Sdefan@nginx.com</change>
10531289Sdefan@nginx.com
10541289Sdefan@nginx.com</changes>
10551289Sdefan@nginx.com
10561289Sdefan@nginx.com
10571185Svbart@nginx.com<changes apply="unit-php
10581185Svbart@nginx.com                unit-python unit-python2.7
10591185Svbart@nginx.com                unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7
10601185Svbart@nginx.com                unit-go unit-go1.7 unit-go1.8 unit-go1.9 unit-go1.10 unit-go1.11
10611185Svbart@nginx.com                unit-perl
10621185Svbart@nginx.com                unit-ruby
10631185Svbart@nginx.com                unit-jsc-common unit-jsc8 unit-jsc10 unit-jsc11"
10641284Svbart@nginx.com         ver="1.13.0" rev="1"
10651284Svbart@nginx.com         date="2019-11-14" time="18:00:00 +0300"
10661284Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
10671284Svbart@nginx.com
10681284Svbart@nginx.com<change>
10691284Svbart@nginx.com<para>
10701284Svbart@nginx.comNGINX Unit updated to 1.13.0.
10711284Svbart@nginx.com</para>
10721284Svbart@nginx.com</change>
10731284Svbart@nginx.com
10741284Svbart@nginx.com</changes>
10751284Svbart@nginx.com
10761284Svbart@nginx.com
10771284Svbart@nginx.com<changes apply="unit" ver="1.13.0" rev="1"
10781284Svbart@nginx.com         date="2019-11-14" time="18:00:00 +0300"
10791284Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
10801284Svbart@nginx.com
10811284Svbart@nginx.com<change type="feature">
10821284Svbart@nginx.com<para>
10831284Svbart@nginx.combasic support for HTTP reverse proxying.
10841284Svbart@nginx.com</para>
10851284Svbart@nginx.com</change>
10861284Svbart@nginx.com
10871284Svbart@nginx.com<change type="feature">
10881284Svbart@nginx.com<para>
10891284Svbart@nginx.comcompatibility with Python 3.8.
10901284Svbart@nginx.com</para>
10911284Svbart@nginx.com</change>
10921284Svbart@nginx.com
10931284Svbart@nginx.com<change type="bugfix">
10941284Svbart@nginx.com<para>
10951284Svbart@nginx.commemory leak in Python application processes when the close handler was used.
10961284Svbart@nginx.com</para>
10971284Svbart@nginx.com</change>
10981284Svbart@nginx.com
10991284Svbart@nginx.com<change type="bugfix">
11001284Svbart@nginx.com<para>
11011284Svbart@nginx.comthreads in Python applications might not work correctly.
11021284Svbart@nginx.com</para>
11031284Svbart@nginx.com</change>
11041284Svbart@nginx.com
11051284Svbart@nginx.com<change type="bugfix">
11061284Svbart@nginx.com<para>
11071284Svbart@nginx.comRuby on Rails applications might not work on Ruby 2.6.
11081284Svbart@nginx.com</para>
11091284Svbart@nginx.com</change>
11101284Svbart@nginx.com
11111284Svbart@nginx.com<change type="bugfix">
11121284Svbart@nginx.com<para>
11131284Svbart@nginx.combacktraces for uncaught exceptions in Python 3 might be logged with significant
11141284Svbart@nginx.comdelays.
11151284Svbart@nginx.com</para>
11161284Svbart@nginx.com</change>
11171284Svbart@nginx.com
11181284Svbart@nginx.com<change type="bugfix">
11191284Svbart@nginx.com<para>
11201284Svbart@nginx.comexplicit setting a namespaces isolation option to false might have enabled it.
11211284Svbart@nginx.com</para>
11221284Svbart@nginx.com</change>
11231284Svbart@nginx.com
11241284Svbart@nginx.com</changes>
11251284Svbart@nginx.com
11261284Svbart@nginx.com
11271284Svbart@nginx.com<changes apply="unit-php
11281284Svbart@nginx.com                unit-python unit-python2.7
11291284Svbart@nginx.com                unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7
11301284Svbart@nginx.com                unit-go unit-go1.7 unit-go1.8 unit-go1.9 unit-go1.10 unit-go1.11
11311284Svbart@nginx.com                unit-perl
11321284Svbart@nginx.com                unit-ruby
11331284Svbart@nginx.com                unit-jsc-common unit-jsc8 unit-jsc10 unit-jsc11"
11341222Svbart@nginx.com         ver="1.12.0" rev="1"
11351222Svbart@nginx.com         date="2019-10-03" time="18:00:00 +0300"
11361222Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
11371222Svbart@nginx.com
11381222Svbart@nginx.com<change>
11391222Svbart@nginx.com<para>
11401222Svbart@nginx.comNGINX Unit updated to 1.12.0.
11411222Svbart@nginx.com</para>
11421222Svbart@nginx.com</change>
11431222Svbart@nginx.com
11441222Svbart@nginx.com</changes>
11451222Svbart@nginx.com
11461222Svbart@nginx.com
11471222Svbart@nginx.com<changes apply="unit" ver="1.12.0" rev="1"
11481222Svbart@nginx.com         date="2019-10-03" time="18:00:00 +0300"
11491222Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
11501222Svbart@nginx.com
11511222Svbart@nginx.com<change type="feature">
11521222Svbart@nginx.com<para>
11531222Svbart@nginx.comcompatibility with PHP 7.4.
11541222Svbart@nginx.com</para>
11551222Svbart@nginx.com</change>
11561222Svbart@nginx.com
11571222Svbart@nginx.com<change type="bugfix">
11581222Svbart@nginx.com<para>
11591222Svbart@nginx.comdescriptors leak on process creation; the bug had appeared in 1.11.0.
11601222Svbart@nginx.com</para>
11611222Svbart@nginx.com</change>
11621222Svbart@nginx.com
11631222Svbart@nginx.com<change type="bugfix">
11641222Svbart@nginx.com<para>
11651222Svbart@nginx.comTLS connection might be closed prematurely while sending response.
11661222Svbart@nginx.com</para>
11671222Svbart@nginx.com</change>
11681222Svbart@nginx.com
11691222Svbart@nginx.com<change type="bugfix">
11701222Svbart@nginx.com<para>
11711222Svbart@nginx.comsegmentation fault might have occurred if an irregular file was requested.
11721222Svbart@nginx.com</para>
11731222Svbart@nginx.com</change>
11741222Svbart@nginx.com
11751222Svbart@nginx.com</changes>
11761222Svbart@nginx.com
11771222Svbart@nginx.com
11781222Svbart@nginx.com
11791222Svbart@nginx.com<changes apply="unit-php
11801222Svbart@nginx.com                unit-python unit-python2.7
11811222Svbart@nginx.com                unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7
11821222Svbart@nginx.com                unit-go unit-go1.7 unit-go1.8 unit-go1.9 unit-go1.10 unit-go1.11
11831222Svbart@nginx.com                unit-perl
11841222Svbart@nginx.com                unit-ruby
11851222Svbart@nginx.com                unit-jsc-common unit-jsc8 unit-jsc10 unit-jsc11"
11861185Svbart@nginx.com         ver="1.11.0" rev="1"
11871185Svbart@nginx.com         date="2019-09-19" time="18:00:00 +0300"
11881185Svbart@nginx.com         packager="Konstantin Pavlov &lt;thresh@nginx.com&gt;">
11891185Svbart@nginx.com
11901185Svbart@nginx.com<change>
11911185Svbart@nginx.com<para>
11921185Svbart@nginx.comNGINX Unit updated to 1.11.0.
11931185Svbart@nginx.com</para>
11941185Svbart@nginx.com</change>
11951185Svbart@nginx.com
11961185Svbart@nginx.com</changes>
11971185Svbart@nginx.com
11981185Svbart@nginx.com
11991185Svbart@nginx.com<changes apply="unit" ver="1.11.0" rev="1"
12001185Svbart@nginx.com         date="2019-09-19" time="18:00:00 +0300"
12011185Svbart@nginx.com         packager="Konstantin Pavlov &lt;thresh@nginx.com&gt;">
12021185Svbart@nginx.com
12031185Svbart@nginx.com<change type="feature">
12041185Svbart@nginx.com<para>
12051185Svbart@nginx.combasic support for serving static files.
12061185Svbart@nginx.com</para>
12071185Svbart@nginx.com</change>
12081185Svbart@nginx.com
12091185Svbart@nginx.com<change type="feature">
12101185Svbart@nginx.com<para>
12111185Svbart@nginx.comisolation of application processes with Linux namespaces.
12121185Svbart@nginx.com</para>
12131185Svbart@nginx.com</change>
12141185Svbart@nginx.com
12151185Svbart@nginx.com<change type="feature">
12161185Svbart@nginx.com<para>
12171185Svbart@nginx.combuilt-in WebSocket server implementation for Java Servlet Containers.
12181185Svbart@nginx.com</para>
12191185Svbart@nginx.com</change>
12201185Svbart@nginx.com
12211185Svbart@nginx.com<change type="feature">
12221185Svbart@nginx.com<para>
12231185Svbart@nginx.comdirect addressing of API configuration options containing slashes "/"
12241185Svbart@nginx.comusing URI encoding (%2F).
12251185Svbart@nginx.com</para>
12261185Svbart@nginx.com</change>
12271185Svbart@nginx.com
12281185Svbart@nginx.com<change type="bugfix">
12291185Svbart@nginx.com<para>
12301185Svbart@nginx.comsegmentation fault might have occurred in Go applications under high load.
12311185Svbart@nginx.com</para>
12321185Svbart@nginx.com</change>
12331185Svbart@nginx.com
12341185Svbart@nginx.com<change type="bugfix">
12351185Svbart@nginx.com<para>
12361185Svbart@nginx.comWebSocket support was broken if Unit was built with some linkers other than
12371185Svbart@nginx.comGNU ld (e.g. gold or LLD).
12381185Svbart@nginx.com</para>
12391185Svbart@nginx.com</change>
12401185Svbart@nginx.com
12411185Svbart@nginx.com</changes>
12421185Svbart@nginx.com
12431185Svbart@nginx.com
12441142Sdefan@nginx.com<changes apply="unit
12451142Sdefan@nginx.com                unit-php
12461142Sdefan@nginx.com                unit-python unit-python2.7
12471142Sdefan@nginx.com                unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7
12481142Sdefan@nginx.com                unit-go unit-go1.7 unit-go1.8 unit-go1.9 unit-go1.10 unit-go1.11
12491142Sdefan@nginx.com                unit-perl
12501142Sdefan@nginx.com                unit-ruby
12511142Sdefan@nginx.com                unit-jsc-common unit-jsc8 unit-jsc10 unit-jsc11"
12521142Sdefan@nginx.com         ver="1.10.0" rev="2"
12531142Sdefan@nginx.com         date="2019-08-23" time="12:00:00 +0300"
12541142Sdefan@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
12551142Sdefan@nginx.com
12561142Sdefan@nginx.com<change type="bugfix">
12571142Sdefan@nginx.com<para>
12581142Sdefan@nginx.commissed header files added to unit development package.
12591142Sdefan@nginx.com</para>
12601142Sdefan@nginx.com</change>
12611142Sdefan@nginx.com
12621142Sdefan@nginx.com</changes>
12631142Sdefan@nginx.com
12641142Sdefan@nginx.com
12651134Svbart@nginx.com<changes apply="unit-php
12661134Svbart@nginx.com                unit-python unit-python2.7
12671134Svbart@nginx.com                unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7
12681134Svbart@nginx.com                unit-go unit-go1.7 unit-go1.8 unit-go1.9 unit-go1.10 unit-go1.11
12691134Svbart@nginx.com                unit-perl
12701134Svbart@nginx.com                unit-ruby
12711134Svbart@nginx.com                unit-jsc-common unit-jsc8 unit-jsc10 unit-jsc11"
12721134Svbart@nginx.com         ver="1.10.0" rev="1"
12731134Svbart@nginx.com         date="2019-08-22" time="18:00:00 +0300"
12741134Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
12751134Svbart@nginx.com
12761134Svbart@nginx.com<change>
12771134Svbart@nginx.com<para>
12781134Svbart@nginx.comNGINX Unit updated to 1.10.0.
12791134Svbart@nginx.com</para>
12801134Svbart@nginx.com</change>
12811134Svbart@nginx.com
12821134Svbart@nginx.com</changes>
12831134Svbart@nginx.com
12841134Svbart@nginx.com
12851134Svbart@nginx.com<changes apply="unit" ver="1.10.0" rev="1"
12861134Svbart@nginx.com         date="2019-08-22" time="18:00:00 +0300"
12871134Svbart@nginx.com         packager="Andrei Belov &lt;defan@nginx.com&gt;">
12881134Svbart@nginx.com
12891134Svbart@nginx.com<change type="change">
12901134Svbart@nginx.com<para>
12911134Svbart@nginx.commatching of cookies in routes made case sensitive.
12921134Svbart@nginx.com</para>
12931134Svbart@nginx.com</change>
12941134Svbart@nginx.com
12951134Svbart@nginx.com<change type="change">
12961134Svbart@nginx.com<para>
12971134Svbart@nginx.comdecreased log level of common errors when clients close connections.
12981134Svbart@nginx.com</para>
12991134Svbart@nginx.com</change>
13001134Svbart@nginx.com
13011134Svbart@nginx.com<change type="change">
13021134Svbart@nginx.com<para>
13031134Svbart@nginx.comremoved the Perl module's "--include=" ./configure option.
13041134Svbart@nginx.com</para>
13051134Svbart@nginx.com</change>
13061134Svbart@nginx.com
13071134Svbart@nginx.com<change type="feature">
13081134Svbart@nginx.com<para>
13091134Svbart@nginx.combuilt-in WebSocket server implementation for Node.js module.
13101134Svbart@nginx.com</para>
13111134Svbart@nginx.com</change>
13121134Svbart@nginx.com
13131134Svbart@nginx.com<change type="feature">
13141134Svbart@nginx.com<para>
13151134Svbart@nginx.comsplitting PATH_INFO from request URI in PHP module.
13161134Svbart@nginx.com</para>
13171134Svbart@nginx.com</change>
13181134Svbart@nginx.com
13191134Svbart@nginx.com<change type="feature">
13201134Svbart@nginx.com<para>
13211134Svbart@nginx.comrequest routing by scheme (HTTP or HTTPS).
13221134Svbart@nginx.com</para>
13231134Svbart@nginx.com</change>
13241134Svbart@nginx.com
13251134Svbart@nginx.com<change type="feature">
13261134Svbart@nginx.com<para>
13271134Svbart@nginx.comsupport for multipart requests body in Java module.
13281134Svbart@nginx.com</para>
13291134Svbart@nginx.com</change>
13301134Svbart@nginx.com
13311134Svbart@nginx.com<change type="feature">
13321134Svbart@nginx.com<para>
13331134Svbart@nginx.comimproved API compatibility with Node.js 11.10 or later.
13341134Svbart@nginx.com</para>
13351134Svbart@nginx.com</change>
13361134Svbart@nginx.com
13371134Svbart@nginx.com<change type="bugfix">
13381134Svbart@nginx.com<para>
13391134Svbart@nginx.comreconfiguration failed if "listeners" or "applications" objects were missing.
13401134Svbart@nginx.com</para>
13411134Svbart@nginx.com</change>
13421134Svbart@nginx.com
13431134Svbart@nginx.com<change type="bugfix">
13441134Svbart@nginx.com<para>
13451134Svbart@nginx.comapplying a large configuration might have failed.
13461134Svbart@nginx.com</para>
13471134Svbart@nginx.com</change>
13481134Svbart@nginx.com
1349