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 81806Svbart@nginx.com<changes apply="unit" ver="1.23.0" rev="1" 91806Svbart@nginx.com date="" time="" 101806Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 111806Svbart@nginx.com 121825Sthresh@nginx.com<change type="feature"> 131825Sthresh@nginx.com<para> 14*1828Sa.suvorov@f5.comsupport for multiple certificate bundles on a listener via Server Name 15*1828Sa.suvorov@f5.comIndication (SNI) TLS extension. 16*1828Sa.suvorov@f5.com</para> 17*1828Sa.suvorov@f5.com</change> 18*1828Sa.suvorov@f5.com 19*1828Sa.suvorov@f5.com<change type="feature"> 20*1828Sa.suvorov@f5.com<para> 211825Sthresh@nginx.com"--mandir" ./configure option to specify the directory for man page installation. 221825Sthresh@nginx.com</para> 231825Sthresh@nginx.com</change> 241825Sthresh@nginx.com 251811Smax.romanov@nginx.com<change type="bugfix"> 261811Smax.romanov@nginx.com<para> 271812Svbart@nginx.comthe router process could crash on premature TLS connection close; the bug had 281812Svbart@nginx.comappeared in 1.17.0. 291812Svbart@nginx.com</para> 301812Svbart@nginx.com</change> 311812Svbart@nginx.com 321812Svbart@nginx.com<change type="bugfix"> 331812Svbart@nginx.com<para> 341812Svbart@nginx.coma connection leak occurring on premature TLS connection close; the bug had 351812Svbart@nginx.comappeared in 1.6. 361812Svbart@nginx.com</para> 371812Svbart@nginx.com</change> 381812Svbart@nginx.com 391812Svbart@nginx.com<change type="bugfix"> 401812Svbart@nginx.com<para> 411811Smax.romanov@nginx.coma descriptor leak occurring in the router process when removing or 421811Smax.romanov@nginx.comreconfiguring an application; the bug had appeared in 1.19.0. 431811Smax.romanov@nginx.com</para> 441811Smax.romanov@nginx.com</change> 451806Svbart@nginx.com 461813Svbart@nginx.com<change type="bugfix"> 471813Svbart@nginx.com<para> 481813Svbart@nginx.compersistent storage of certificates might've not worked with some filesystems in 491813Svbart@nginx.comLinux, and all uploaded certificate bundles were forgotten after restart. 501813Svbart@nginx.com</para> 511813Svbart@nginx.com</change> 521813Svbart@nginx.com 531814Svbart@nginx.com<change type="bugfix"> 541814Svbart@nginx.com<para> 551820Svbart@nginx.comthe controller process could crash while requesting information about a 561820Svbart@nginx.comcertificate with a non-DNS SAN entry. 571820Svbart@nginx.com</para> 581820Svbart@nginx.com</change> 591820Svbart@nginx.com 601820Svbart@nginx.com<change type="bugfix"> 611820Svbart@nginx.com<para> 621822Svbart@nginx.comthe controller process could crash on manipulations with a certificate 631822Svbart@nginx.comcontaining a SAN and no standart name attributes in subject or issuer. 641822Svbart@nginx.com</para> 651822Svbart@nginx.com</change> 661822Svbart@nginx.com 671822Svbart@nginx.com<change type="bugfix"> 681822Svbart@nginx.com<para> 691814Svbart@nginx.comthe Ruby module didn't respect user locale for defaults in the Encoding class. 701814Svbart@nginx.com</para> 711814Svbart@nginx.com</change> 721814Svbart@nginx.com 731815Svbart@nginx.com<change type="bugfix"> 741815Svbart@nginx.com<para> 751815Svbart@nginx.comthe PHP 5 module failed to build with thread safety enabled; the bug had 761815Svbart@nginx.comappeared in 1.22.0. 771815Svbart@nginx.com</para> 781815Svbart@nginx.com</change> 791815Svbart@nginx.com 801806Svbart@nginx.com</changes> 811806Svbart@nginx.com 821806Svbart@nginx.com 831798Sdefan@nginx.com<changes apply="unit-python3.9" ver="1.22.0" rev="1" 841798Sdefan@nginx.com date="2021-02-04" time="18:00:00 +0300" 851798Sdefan@nginx.com packager="Andrei Belov <defan@nginx.com>"> 861798Sdefan@nginx.com 871798Sdefan@nginx.com<change> 881798Sdefan@nginx.com<para> 891798Sdefan@nginx.comInitial release of Python 3.9 module for NGINX Unit. 901798Sdefan@nginx.com</para> 911798Sdefan@nginx.com</change> 921798Sdefan@nginx.com 931798Sdefan@nginx.com</changes> 941798Sdefan@nginx.com 951798Sdefan@nginx.com 961763Sdefan@nginx.com<changes apply="unit-php 971763Sdefan@nginx.com unit-python unit-python2.7 981763Sdefan@nginx.com unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7 991763Sdefan@nginx.com unit-python3.8 1001763Sdefan@nginx.com unit-go 1011763Sdefan@nginx.com unit-perl 1021763Sdefan@nginx.com unit-ruby 1031763Sdefan@nginx.com unit-jsc-common unit-jsc8 unit-jsc10 unit-jsc11 unit-jsc13 1041763Sdefan@nginx.com unit-jsc14 unit-jsc15" 1051763Sdefan@nginx.com ver="1.22.0" rev="1" 1061793Svbart@nginx.com date="2021-02-04" time="18:00:00 +0300" 1071763Sdefan@nginx.com packager="Andrei Belov <defan@nginx.com>"> 1081763Sdefan@nginx.com 1091763Sdefan@nginx.com<change> 1101763Sdefan@nginx.com<para> 1111763Sdefan@nginx.comNGINX Unit updated to 1.22.0. 1121763Sdefan@nginx.com</para> 1131763Sdefan@nginx.com</change> 1141763Sdefan@nginx.com 1151763Sdefan@nginx.com</changes> 1161763Sdefan@nginx.com 1171763Sdefan@nginx.com 1181727Svbart@nginx.com<changes apply="unit" ver="1.22.0" rev="1" 1191793Svbart@nginx.com date="2021-02-04" time="18:00:00 +0300" 1201727Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 1211727Svbart@nginx.com 1221759Svbart@nginx.com<change type="feature"> 1231759Svbart@nginx.com<para> 1241792Svbart@nginx.comthe ServerRequest and ServerResponse objects of Node.js module are now 1251792Svbart@nginx.comcompliant with Stream API. 1261759Svbart@nginx.com</para> 1271759Svbart@nginx.com</change> 1281759Svbart@nginx.com 1291766Smax.romanov@nginx.com<change type="feature"> 1301766Smax.romanov@nginx.com<para> 1311792Svbart@nginx.comsupport for specifying multiple directories in the "path" option of Python 1321792Svbart@nginx.comapps. 1331732Svbart@nginx.com</para> 1341732Svbart@nginx.com</change> 1351732Svbart@nginx.com 1361733Svbart@nginx.com<change type="bugfix"> 1371733Svbart@nginx.com<para> 1381792Svbart@nginx.coma memory leak occurred in the router process when serving files larger than 1391792Svbart@nginx.com128K; the bug had appeared in 1.13.0. 1401754Smax.romanov@nginx.com</para> 1411754Smax.romanov@nginx.com</change> 1421754Smax.romanov@nginx.com 1431755Smax.romanov@nginx.com<change type="bugfix"> 1441755Smax.romanov@nginx.com<para> 1451790Sartem.konev@nginx.comapps could stop processing new requests under high load; the bug had 1461755Smax.romanov@nginx.comappeared in 1.19.0. 1471755Smax.romanov@nginx.com</para> 1481755Smax.romanov@nginx.com</change> 1491755Smax.romanov@nginx.com 1501756Smax.romanov@nginx.com<change type="bugfix"> 1511756Smax.romanov@nginx.com<para> 1521790Sartem.konev@nginx.comapp processes could terminate unexpectedly under high load; the bug had 1531790Sartem.konev@nginx.comappeared in 1.19.0. 1541756Smax.romanov@nginx.com</para> 1551756Smax.romanov@nginx.com</change> 1561756Smax.romanov@nginx.com 1571760Smax.romanov@nginx.com<change type="bugfix"> 1581760Smax.romanov@nginx.com<para> 1591792Svbart@nginx.cominvalid HTTP responses were generated for some unusual status codes. 1601792Svbart@nginx.com</para> 1611792Svbart@nginx.com</change> 1621792Svbart@nginx.com 1631792Svbart@nginx.com<change type="bugfix"> 1641792Svbart@nginx.com<para> 1651792Svbart@nginx.comthe PHP_AUTH_USER, PHP_AUTH_PW, and PHP_AUTH_DIGEST server variables were 1661792Svbart@nginx.commissing in the PHP module. 1671792Svbart@nginx.com</para> 1681792Svbart@nginx.com</change> 1691792Svbart@nginx.com 1701792Svbart@nginx.com<change type="bugfix"> 1711792Svbart@nginx.com<para> 1721792Svbart@nginx.comthe router process could crash with multithreaded apps under high load. 1731792Svbart@nginx.com</para> 1741792Svbart@nginx.com</change> 1751792Svbart@nginx.com 1761792Svbart@nginx.com<change type="bugfix"> 1771792Svbart@nginx.com<para> 1781792Svbart@nginx.comRuby apps with multithreading configured could crash on start under load. 1791792Svbart@nginx.com</para> 1801792Svbart@nginx.com</change> 1811792Svbart@nginx.com 1821792Svbart@nginx.com<change type="bugfix"> 1831792Svbart@nginx.com<para> 1841792Svbart@nginx.commount points weren't unmounted when the "mount" namespace isolation was used; 1851792Svbart@nginx.comthe bug had appeared in 1.21.0. 1861760Smax.romanov@nginx.com</para> 1871760Smax.romanov@nginx.com</change> 1881760Smax.romanov@nginx.com 1891780Smax.romanov@nginx.com<change type="bugfix"> 1901780Smax.romanov@nginx.com<para> 1911790Sartem.konev@nginx.comthe router process could crash while removing or reconfiguring an app that used 1921790Sartem.konev@nginx.comWebSocket. 1931780Smax.romanov@nginx.com</para> 1941780Smax.romanov@nginx.com</change> 1951780Smax.romanov@nginx.com 1961789Smax.romanov@nginx.com<change type="bugfix"> 1971789Smax.romanov@nginx.com<para> 1981789Smax.romanov@nginx.coma memory leak occurring in the router process when removing or reconfiguring 1991789Smax.romanov@nginx.coman application; the bug had appeared in 1.19.0. 2001789Smax.romanov@nginx.com</para> 2011789Smax.romanov@nginx.com</change> 2021789Smax.romanov@nginx.com 2031727Svbart@nginx.com</changes> 2041727Svbart@nginx.com 2051727Svbart@nginx.com 2061722Svbart@nginx.com<changes apply="unit-jsc15" ver="1.21.0" rev="1" 2071722Svbart@nginx.com date="2020-11-19" time="18:00:00 +0300" 2081722Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 2091722Svbart@nginx.com 2101722Svbart@nginx.com<change> 2111722Svbart@nginx.com<para> 2121722Svbart@nginx.comInitial release of Java 15 module for NGINX Unit. 2131722Svbart@nginx.com</para> 2141722Svbart@nginx.com</change> 2151722Svbart@nginx.com 2161722Svbart@nginx.com</changes> 2171722Svbart@nginx.com 2181722Svbart@nginx.com 2191722Svbart@nginx.com<changes apply="unit-jsc14" ver="1.21.0" rev="1" 2201722Svbart@nginx.com date="2020-11-19" time="18:00:00 +0300" 2211722Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 2221722Svbart@nginx.com 2231722Svbart@nginx.com<change> 2241722Svbart@nginx.com<para> 2251722Svbart@nginx.comInitial release of Java 14 module for NGINX Unit. 2261722Svbart@nginx.com</para> 2271722Svbart@nginx.com</change> 2281722Svbart@nginx.com 2291722Svbart@nginx.com</changes> 2301722Svbart@nginx.com 2311722Svbart@nginx.com 2321722Svbart@nginx.com<changes apply="unit-jsc13" ver="1.21.0" rev="1" 2331722Svbart@nginx.com date="2020-11-19" time="18:00:00 +0300" 2341722Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 2351722Svbart@nginx.com 2361722Svbart@nginx.com<change> 2371722Svbart@nginx.com<para> 2381722Svbart@nginx.comInitial release of Java 13 module for NGINX Unit. 2391722Svbart@nginx.com</para> 2401722Svbart@nginx.com</change> 2411722Svbart@nginx.com 2421722Svbart@nginx.com</changes> 2431722Svbart@nginx.com 2441722Svbart@nginx.com 2451722Svbart@nginx.com<changes apply="unit-php 2461722Svbart@nginx.com unit-python unit-python2.7 2471722Svbart@nginx.com unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7 2481722Svbart@nginx.com unit-python3.8 2491722Svbart@nginx.com unit-go 2501722Svbart@nginx.com unit-perl 2511722Svbart@nginx.com unit-ruby 2521722Svbart@nginx.com unit-jsc-common unit-jsc8 unit-jsc10 unit-jsc11" 2531722Svbart@nginx.com ver="1.21.0" rev="1" 2541722Svbart@nginx.com date="2020-11-19" time="18:00:00 +0300" 2551722Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 2561722Svbart@nginx.com 2571722Svbart@nginx.com<change> 2581722Svbart@nginx.com<para> 2591722Svbart@nginx.comNGINX Unit updated to 1.21.0. 2601722Svbart@nginx.com</para> 2611722Svbart@nginx.com</change> 2621722Svbart@nginx.com 2631722Svbart@nginx.com</changes> 2641722Svbart@nginx.com 2651722Svbart@nginx.com 2661722Svbart@nginx.com<changes apply="unit" ver="1.21.0" rev="1" 2671722Svbart@nginx.com date="2020-11-19" time="18:00:00 +0300" 2681722Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 2691722Svbart@nginx.com 2701722Svbart@nginx.com<change type="change"> 2711722Svbart@nginx.com<para> 2721722Svbart@nginx.comprocfs is mounted by default for all languages when "rootfs" isolation is used. 2731722Svbart@nginx.com</para> 2741722Svbart@nginx.com</change> 2751722Svbart@nginx.com 2761722Svbart@nginx.com<change type="change"> 2771722Svbart@nginx.com<para> 2781722Svbart@nginx.comany characters valid according to RFC 7230 are now allowed in HTTP header field 2791722Svbart@nginx.comnames. 2801722Svbart@nginx.com</para> 2811722Svbart@nginx.com</change> 2821722Svbart@nginx.com 2831722Svbart@nginx.com<change type="change"> 2841722Svbart@nginx.com<para> 2851722Svbart@nginx.comHTTP header fields with underscores ("_") are now discarded from requests by 2861722Svbart@nginx.comdefault. 2871722Svbart@nginx.com</para> 2881722Svbart@nginx.com</change> 2891722Svbart@nginx.com 2901722Svbart@nginx.com<change type="feature"> 2911722Svbart@nginx.com<para> 2921722Svbart@nginx.comoptional multithreaded request processing for Java, Python, Perl, and Ruby apps. 2931722Svbart@nginx.com</para> 2941722Svbart@nginx.com</change> 2951722Svbart@nginx.com 2961722Svbart@nginx.com<change type="feature"> 2971722Svbart@nginx.com<para> 2981722Svbart@nginx.comregular expressions in route matching patterns. 2991722Svbart@nginx.com</para> 3001722Svbart@nginx.com</change> 3011722Svbart@nginx.com 3021722Svbart@nginx.com<change type="feature"> 3031722Svbart@nginx.com<para> 3041722Svbart@nginx.comcompatibility with Python 3.9. 3051722Svbart@nginx.com</para> 3061722Svbart@nginx.com</change> 3071722Svbart@nginx.com 3081722Svbart@nginx.com<change type="feature"> 3091722Svbart@nginx.com<para> 3101722Svbart@nginx.comthe Python module now supports ASGI 2.0 legacy applications. 3111722Svbart@nginx.com</para> 3121722Svbart@nginx.com</change> 3131722Svbart@nginx.com 3141722Svbart@nginx.com<change type="feature"> 3151722Svbart@nginx.com<para> 3161722Svbart@nginx.comthe "protocol" option in Python applications aids choice between ASGI and WSGI. 3171722Svbart@nginx.com</para> 3181722Svbart@nginx.com</change> 3191722Svbart@nginx.com 3201722Svbart@nginx.com<change type="feature"> 3211722Svbart@nginx.com<para> 3221722Svbart@nginx.comthe fastcgi_finish_request() PHP function that finalizes request processing and 3231722Svbart@nginx.comcontinues code execution without holding onto the client connection. 3241722Svbart@nginx.com</para> 3251722Svbart@nginx.com</change> 3261722Svbart@nginx.com 3271722Svbart@nginx.com<change type="feature"> 3281722Svbart@nginx.com<para> 3291722Svbart@nginx.comthe "discard_unsafe_fields" HTTP option that enables discarding request header 3301722Svbart@nginx.comfields with irregular (but still valid) characters in the field name. 3311722Svbart@nginx.com</para> 3321722Svbart@nginx.com</change> 3331722Svbart@nginx.com 3341722Svbart@nginx.com<change type="feature"> 3351722Svbart@nginx.com<para> 3361722Svbart@nginx.comthe "procfs" and "tmpfs" automount isolation options to disable automatic 3371722Svbart@nginx.commounting of eponymous filesystems. 3381722Svbart@nginx.com</para> 3391722Svbart@nginx.com</change> 3401722Svbart@nginx.com 3411722Svbart@nginx.com<change type="bugfix"> 3421722Svbart@nginx.com<para> 3431722Svbart@nginx.comthe router process could crash when running Go applications under high load; 3441722Svbart@nginx.comthe bug had appeared in 1.19.0. 3451722Svbart@nginx.com</para> 3461722Svbart@nginx.com</change> 3471722Svbart@nginx.com 3481722Svbart@nginx.com<change type="bugfix"> 3491722Svbart@nginx.com<para> 3501722Svbart@nginx.comsome language dependencies could remain mounted after using "rootfs" isolation. 3511722Svbart@nginx.com</para> 3521722Svbart@nginx.com</change> 3531722Svbart@nginx.com 3541722Svbart@nginx.com<change type="bugfix"> 3551722Svbart@nginx.com<para> 3561722Svbart@nginx.comvarious compatibility issues in Java applications. 3571722Svbart@nginx.com</para> 3581722Svbart@nginx.com</change> 3591722Svbart@nginx.com 3601722Svbart@nginx.com<change type="bugfix"> 3611722Svbart@nginx.com<para> 3621722Svbart@nginx.comthe Java module built with the musl C library couldn't run applications that 3631722Svbart@nginx.comuse "rootfs" isolation. 3641722Svbart@nginx.com</para> 3651722Svbart@nginx.com</change> 3661722Svbart@nginx.com 3671722Svbart@nginx.com</changes> 3681722Svbart@nginx.com 3691722Svbart@nginx.com 3701330Svbart@nginx.com<changes apply="unit-php 3711330Svbart@nginx.com unit-python unit-python2.7 3721330Svbart@nginx.com unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7 3731330Svbart@nginx.com unit-python3.8 3741330Svbart@nginx.com unit-go 3751330Svbart@nginx.com unit-perl 3761330Svbart@nginx.com unit-ruby 3771330Svbart@nginx.com unit-jsc-common unit-jsc8 unit-jsc10 unit-jsc11" 3781640Svbart@nginx.com ver="1.20.0" rev="1" 3791640Svbart@nginx.com date="2020-10-08" time="18:00:00 +0300" 3801640Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 3811640Svbart@nginx.com 3821640Svbart@nginx.com<change> 3831640Svbart@nginx.com<para> 3841640Svbart@nginx.comNGINX Unit updated to 1.20.0. 3851640Svbart@nginx.com</para> 3861640Svbart@nginx.com</change> 3871640Svbart@nginx.com 3881640Svbart@nginx.com</changes> 3891640Svbart@nginx.com 3901640Svbart@nginx.com 3911640Svbart@nginx.com<changes apply="unit" ver="1.20.0" rev="1" 3921640Svbart@nginx.com date="2020-10-08" time="18:00:00 +0300" 3931640Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 3941640Svbart@nginx.com 3951640Svbart@nginx.com<change type="change"> 3961640Svbart@nginx.com<para> 3971640Svbart@nginx.comthe PHP module is now initialized before chrooting; this enables loading all 3981640Svbart@nginx.comextensions from the host system. 3991640Svbart@nginx.com</para> 4001640Svbart@nginx.com</change> 4011640Svbart@nginx.com 4021640Svbart@nginx.com<change type="change"> 4031640Svbart@nginx.com<para> 4041640Svbart@nginx.comAVIF and APNG image formats added to the default MIME type list. 4051640Svbart@nginx.com</para> 4061640Svbart@nginx.com</change> 4071640Svbart@nginx.com 4081643Svbart@nginx.com<change type="change"> 4091643Svbart@nginx.com<para> 4101643Svbart@nginx.comfunctional tests migrated to the pytest framework. 4111643Svbart@nginx.com</para> 4121643Svbart@nginx.com</change> 4131643Svbart@nginx.com 4141640Svbart@nginx.com<change type="feature"> 4151640Svbart@nginx.com<para> 4161640Svbart@nginx.comthe Python module now fully supports applications that use the ASGI 3.0 server 4171640Svbart@nginx.cominterface. 4181640Svbart@nginx.com</para> 4191640Svbart@nginx.com</change> 4201640Svbart@nginx.com 4211640Svbart@nginx.com<change type="feature"> 4221640Svbart@nginx.com<para> 4231640Svbart@nginx.comthe Python module now has a built-in WebSocket server implementation for 4241640Svbart@nginx.comapplications, compatible with the HTTP & WebSocket ASGI Message Format 2.1 4251640Svbart@nginx.comspecification. 4261640Svbart@nginx.com</para> 4271640Svbart@nginx.com</change> 4281640Svbart@nginx.com 4291640Svbart@nginx.com<change type="feature"> 4301640Svbart@nginx.com<para> 4311640Svbart@nginx.comautomatic mounting of an isolated "/tmp" file system into chrooted application 4321640Svbart@nginx.comenvironments. 4331640Svbart@nginx.com</para> 4341640Svbart@nginx.com</change> 4351640Svbart@nginx.com 4361640Svbart@nginx.com<change type="feature"> 4371640Svbart@nginx.com<para> 4381640Svbart@nginx.comthe $host variable contains a normalized "Host" request value. 4391640Svbart@nginx.com</para> 4401640Svbart@nginx.com</change> 4411640Svbart@nginx.com 4421640Svbart@nginx.com<change type="feature"> 4431640Svbart@nginx.com<para> 4441640Svbart@nginx.comthe "callable" option sets Python application callable names. 4451640Svbart@nginx.com</para> 4461640Svbart@nginx.com</change> 4471640Svbart@nginx.com 4481640Svbart@nginx.com<change type="feature"> 4491640Svbart@nginx.com<para> 4501640Svbart@nginx.comcompatibility with PHP 8 RC 1. Thanks to Remi Collet. 4511640Svbart@nginx.com</para> 4521640Svbart@nginx.com</change> 4531640Svbart@nginx.com 4541640Svbart@nginx.com<change type="feature"> 4551640Svbart@nginx.com<para> 4561640Svbart@nginx.comthe "automount" option in the "isolation" object allows to turn off the 4571640Svbart@nginx.comautomatic mounting of language module dependencies. 4581640Svbart@nginx.com</para> 4591640Svbart@nginx.com</change> 4601640Svbart@nginx.com 4611640Svbart@nginx.com<change type="bugfix"> 4621640Svbart@nginx.com<para> 4631640Svbart@nginx.com"pass"-ing requests to upstreams from a route was broken; the bug had appeared 4641640Svbart@nginx.comin 1.19.0. Thanks to 洪志道 (Hong Zhi Dao) for discovering and fixing it. 4651640Svbart@nginx.com</para> 4661640Svbart@nginx.com</change> 4671640Svbart@nginx.com 4681640Svbart@nginx.com<change type="bugfix"> 4691640Svbart@nginx.com<para> 4701640Svbart@nginx.comthe router process could crash during reconfiguration. 4711640Svbart@nginx.com</para> 4721640Svbart@nginx.com</change> 4731640Svbart@nginx.com 4741640Svbart@nginx.com<change type="bugfix"> 4751640Svbart@nginx.com<para> 4761640Svbart@nginx.coma memory leak occurring in the router process; the bug had appeared in 1.18.0. 4771640Svbart@nginx.com</para> 4781640Svbart@nginx.com</change> 4791640Svbart@nginx.com 4801640Svbart@nginx.com<change type="bugfix"> 4811640Svbart@nginx.com<para> 4821640Svbart@nginx.comthe "!" (non-empty) pattern was matched incorrectly; 4831640Svbart@nginx.comthe bug had appeared in 1.19.0. 4841640Svbart@nginx.com</para> 4851640Svbart@nginx.com</change> 4861640Svbart@nginx.com 4871640Svbart@nginx.com<change type="bugfix"> 4881640Svbart@nginx.com<para> 4891640Svbart@nginx.comfixed building on platforms without sendfile() support, notably NetBSD; 4901640Svbart@nginx.comthe bug had appeared in 1.16.0. 4911640Svbart@nginx.com</para> 4921640Svbart@nginx.com</change> 4931640Svbart@nginx.com 4941640Svbart@nginx.com</changes> 4951640Svbart@nginx.com 4961640Svbart@nginx.com 4971640Svbart@nginx.com<changes apply="unit-php 4981640Svbart@nginx.com unit-python unit-python2.7 4991640Svbart@nginx.com unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7 5001640Svbart@nginx.com unit-python3.8 5011640Svbart@nginx.com unit-go 5021640Svbart@nginx.com unit-perl 5031640Svbart@nginx.com unit-ruby 5041640Svbart@nginx.com unit-jsc-common unit-jsc8 unit-jsc10 unit-jsc11" 5051570Svbart@nginx.com ver="1.19.0" rev="1" 5061570Svbart@nginx.com date="2020-08-13" time="18:00:00 +0300" 5071570Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 5081570Svbart@nginx.com 5091570Svbart@nginx.com<change> 5101570Svbart@nginx.com<para> 5111570Svbart@nginx.comNGINX Unit updated to 1.19.0. 5121570Svbart@nginx.com</para> 5131570Svbart@nginx.com</change> 5141570Svbart@nginx.com 5151570Svbart@nginx.com</changes> 5161570Svbart@nginx.com 5171570Svbart@nginx.com 5181570Svbart@nginx.com<changes apply="unit" ver="1.19.0" rev="1" 5191570Svbart@nginx.com date="2020-08-13" time="18:00:00 +0300" 5201570Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 5211570Svbart@nginx.com 5221570Svbart@nginx.com<change type="feature"> 5231570Svbart@nginx.com<para> 5241570Svbart@nginx.comreworked IPC between the router process and the applications to lower latencies, 5251570Svbart@nginx.comincrease performance, and improve scalability. 5261570Svbart@nginx.com</para> 5271570Svbart@nginx.com</change> 5281570Svbart@nginx.com 5291570Svbart@nginx.com<change type="feature"> 5301570Svbart@nginx.com<para> 5311570Svbart@nginx.comsupport for an arbitrary number of wildcards in route matching patterns. 5321570Svbart@nginx.com</para> 5331570Svbart@nginx.com</change> 5341570Svbart@nginx.com 5351570Svbart@nginx.com<change type="feature"> 5361570Svbart@nginx.com<para> 5371570Svbart@nginx.comchunked transfer encoding in proxy responses. 5381570Svbart@nginx.com</para> 5391570Svbart@nginx.com</change> 5401570Svbart@nginx.com 5411570Svbart@nginx.com<change type="feature"> 5421570Svbart@nginx.com<para> 5431570Svbart@nginx.combasic variables support in the "pass" option. 5441570Svbart@nginx.com</para> 5451570Svbart@nginx.com</change> 5461570Svbart@nginx.com 5471570Svbart@nginx.com<change type="feature"> 5481570Svbart@nginx.com<para> 5491570Svbart@nginx.comcompatibility with PHP 8 Beta 1. 5501570Svbart@nginx.comThanks to Remi Collet. 5511570Svbart@nginx.com</para> 5521570Svbart@nginx.com</change> 5531570Svbart@nginx.com 5541570Svbart@nginx.com<change type="bugfix"> 5551570Svbart@nginx.com<para> 5561570Svbart@nginx.comthe router process could crash while passing requests to an application under 5571570Svbart@nginx.comhigh load. 5581570Svbart@nginx.com</para> 5591570Svbart@nginx.com</change> 5601570Svbart@nginx.com 5611570Svbart@nginx.com<change type="bugfix"> 5621570Svbart@nginx.com<para> 5631570Svbart@nginx.coma number of language modules failed to build on some systems; 5641570Svbart@nginx.comthe bug had appeared in 1.18.0. 5651570Svbart@nginx.com</para> 5661570Svbart@nginx.com</change> 5671570Svbart@nginx.com 5681570Svbart@nginx.com<change type="bugfix"> 5691570Svbart@nginx.com<para> 5701570Svbart@nginx.comtime in error log messages from PHP applications could lag. 5711570Svbart@nginx.com</para> 5721570Svbart@nginx.com</change> 5731570Svbart@nginx.com 5741570Svbart@nginx.com<change type="bugfix"> 5751570Svbart@nginx.com<para> 5761570Svbart@nginx.comreconfiguration requests could hang if an application had failed to start; 5771570Svbart@nginx.comthe bug had appeared in 1.18.0. 5781570Svbart@nginx.com</para> 5791570Svbart@nginx.com</change> 5801570Svbart@nginx.com 5811570Svbart@nginx.com<change type="bugfix"> 5821570Svbart@nginx.com<para> 5831570Svbart@nginx.commemory leak during reconfiguration. 5841570Svbart@nginx.com</para> 5851570Svbart@nginx.com</change> 5861570Svbart@nginx.com 5871570Svbart@nginx.com<change type="bugfix"> 5881570Svbart@nginx.com<para> 5891570Svbart@nginx.comthe daemon didn't start without language modules; 5901570Svbart@nginx.comthe bug had appeared in 1.18.0. 5911570Svbart@nginx.com</para> 5921570Svbart@nginx.com</change> 5931570Svbart@nginx.com 5941570Svbart@nginx.com<change type="bugfix"> 5951570Svbart@nginx.com<para> 5961570Svbart@nginx.comthe router process could crash at exit. 5971570Svbart@nginx.com</para> 5981570Svbart@nginx.com</change> 5991570Svbart@nginx.com 6001570Svbart@nginx.com<change type="bugfix"> 6011570Svbart@nginx.com<para> 6021570Svbart@nginx.comNode.js applications could crash at exit. 6031570Svbart@nginx.com</para> 6041570Svbart@nginx.com</change> 6051570Svbart@nginx.com 6061570Svbart@nginx.com<change type="bugfix"> 6071570Svbart@nginx.com<para> 6081570Svbart@nginx.comthe Ruby module could be linked against a wrong library version. 6091570Svbart@nginx.com</para> 6101570Svbart@nginx.com</change> 6111570Svbart@nginx.com 6121570Svbart@nginx.com</changes> 6131570Svbart@nginx.com 6141570Svbart@nginx.com 6151570Svbart@nginx.com<changes apply="unit-php 6161570Svbart@nginx.com unit-python unit-python2.7 6171570Svbart@nginx.com unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7 6181570Svbart@nginx.com unit-python3.8 6191570Svbart@nginx.com unit-go 6201570Svbart@nginx.com unit-perl 6211570Svbart@nginx.com unit-ruby 6221570Svbart@nginx.com unit-jsc-common unit-jsc8 unit-jsc10 unit-jsc11" 6231491Svbart@nginx.com ver="1.18.0" rev="1" 6241491Svbart@nginx.com date="2020-05-28" time="18:00:00 +0300" 6251491Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 6261491Svbart@nginx.com 6271491Svbart@nginx.com<change> 6281491Svbart@nginx.com<para> 6291491Svbart@nginx.comNGINX Unit updated to 1.18.0. 6301491Svbart@nginx.com</para> 6311491Svbart@nginx.com</change> 6321491Svbart@nginx.com 6331491Svbart@nginx.com</changes> 6341491Svbart@nginx.com 6351491Svbart@nginx.com 6361491Svbart@nginx.com<changes apply="unit" ver="1.18.0" rev="1" 6371491Svbart@nginx.com date="2020-05-28" time="18:00:00 +0300" 6381491Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 6391491Svbart@nginx.com 6401491Svbart@nginx.com<change type="feature"> 6411491Svbart@nginx.com<para> 6421491Svbart@nginx.comthe "rootfs" isolation option for changing root filesystem for an application. 6431491Svbart@nginx.com</para> 6441491Svbart@nginx.com</change> 6451491Svbart@nginx.com 6461491Svbart@nginx.com<change type="feature"> 6471491Svbart@nginx.com<para> 6481491Svbart@nginx.commultiple "targets" in PHP applications. 6491491Svbart@nginx.com</para> 6501491Svbart@nginx.com</change> 6511491Svbart@nginx.com 6521491Svbart@nginx.com<change type="feature"> 6531491Svbart@nginx.com<para> 6541491Svbart@nginx.comsupport for percent-encoding in the "uri" and "arguments" matching options 6551491Svbart@nginx.comand in the "pass" option. 6561491Svbart@nginx.com</para> 6571491Svbart@nginx.com</change> 6581491Svbart@nginx.com 6591491Svbart@nginx.com</changes> 6601491Svbart@nginx.com 6611491Svbart@nginx.com 6621491Svbart@nginx.com<changes apply="unit-php 6631491Svbart@nginx.com unit-python unit-python2.7 6641491Svbart@nginx.com unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7 6651491Svbart@nginx.com unit-python3.8 6661491Svbart@nginx.com unit-go 6671491Svbart@nginx.com unit-perl 6681491Svbart@nginx.com unit-ruby 6691491Svbart@nginx.com unit-jsc-common unit-jsc8 unit-jsc10 unit-jsc11" 6701460Svbart@nginx.com ver="1.17.0" rev="1" 6711460Svbart@nginx.com date="2020-04-16" time="18:00:00 +0300" 6721460Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 6731460Svbart@nginx.com 6741460Svbart@nginx.com<change> 6751460Svbart@nginx.com<para> 6761460Svbart@nginx.comNGINX Unit updated to 1.17.0. 6771460Svbart@nginx.com</para> 6781460Svbart@nginx.com</change> 6791460Svbart@nginx.com 6801460Svbart@nginx.com</changes> 6811460Svbart@nginx.com 6821460Svbart@nginx.com 6831460Svbart@nginx.com<changes apply="unit" ver="1.17.0" rev="1" 6841460Svbart@nginx.com date="2020-04-16" time="18:00:00 +0300" 6851460Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 6861460Svbart@nginx.com 6871460Svbart@nginx.com<change type="feature"> 6881460Svbart@nginx.com<para> 6891460Svbart@nginx.coma "return" action with optional "location" for immediate responses and external 6901460Svbart@nginx.comredirection. 6911460Svbart@nginx.com</para> 6921460Svbart@nginx.com</change> 6931460Svbart@nginx.com 6941460Svbart@nginx.com<change type="feature"> 6951460Svbart@nginx.com<para> 6961460Svbart@nginx.comfractional weights support for upstream servers. 6971460Svbart@nginx.com</para> 6981460Svbart@nginx.com</change> 6991460Svbart@nginx.com 7001460Svbart@nginx.com<change type="bugfix"> 7011460Svbart@nginx.com<para> 7021460Svbart@nginx.comaccidental 502 "Bad Gateway" errors might have occurred in applications under 7031460Svbart@nginx.comhigh load. 7041460Svbart@nginx.com</para> 7051460Svbart@nginx.com</change> 7061460Svbart@nginx.com 7071460Svbart@nginx.com<change type="bugfix"> 7081460Svbart@nginx.com<para> 7091460Svbart@nginx.commemory leak in the router; the bug had appeared in 1.13.0. 7101460Svbart@nginx.com</para> 7111460Svbart@nginx.com</change> 7121460Svbart@nginx.com 7131460Svbart@nginx.com<change type="bugfix"> 7141460Svbart@nginx.com<para> 7151460Svbart@nginx.comsegmentation fault might have occurred in the router process when reaching 7161460Svbart@nginx.comopen connections limit. 7171460Svbart@nginx.com</para> 7181460Svbart@nginx.com</change> 7191460Svbart@nginx.com 7201460Svbart@nginx.com<change type="bugfix"> 7211460Svbart@nginx.com<para> 7221460Svbart@nginx.com"close() failed (9: Bad file descriptor)" alerts might have appeared in the log 7231460Svbart@nginx.comwhile processing large request bodies; the bug had appeared in 1.16.0. 7241460Svbart@nginx.com</para> 7251460Svbart@nginx.com</change> 7261460Svbart@nginx.com 7271460Svbart@nginx.com<change type="bugfix"> 7281460Svbart@nginx.com<para> 7291460Svbart@nginx.comexisting application processes didn't reopen the log file. 7301460Svbart@nginx.com</para> 7311460Svbart@nginx.com</change> 7321460Svbart@nginx.com 7331460Svbart@nginx.com<change type="bugfix"> 7341460Svbart@nginx.com<para> 7351460Svbart@nginx.comincompatibility with some Node.js applications. 7361460Svbart@nginx.com</para> 7371460Svbart@nginx.com</change> 7381460Svbart@nginx.com 7391460Svbart@nginx.com<change type="bugfix"> 7401460Svbart@nginx.com<para> 7411460Svbart@nginx.combroken build on DragonFly BSD; the bug had appeared in 1.16.0. 7421460Svbart@nginx.com</para> 7431460Svbart@nginx.com</change> 7441460Svbart@nginx.com 7451460Svbart@nginx.com</changes> 7461460Svbart@nginx.com 7471460Svbart@nginx.com 7481460Svbart@nginx.com<changes apply="unit-php 7491460Svbart@nginx.com unit-python unit-python2.7 7501460Svbart@nginx.com unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7 7511460Svbart@nginx.com unit-python3.8 7521460Svbart@nginx.com unit-go 7531460Svbart@nginx.com unit-perl 7541460Svbart@nginx.com unit-ruby 7551460Svbart@nginx.com unit-jsc-common unit-jsc8 unit-jsc10 unit-jsc11" 7561404Svbart@nginx.com ver="1.16.0" rev="1" 7571404Svbart@nginx.com date="2020-03-12" time="18:00:00 +0300" 7581404Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 7591404Svbart@nginx.com 7601404Svbart@nginx.com<change> 7611404Svbart@nginx.com<para> 7621404Svbart@nginx.comNGINX Unit updated to 1.16.0. 7631404Svbart@nginx.com</para> 7641404Svbart@nginx.com</change> 7651404Svbart@nginx.com 7661404Svbart@nginx.com</changes> 7671404Svbart@nginx.com 7681404Svbart@nginx.com 7691404Svbart@nginx.com<changes apply="unit" ver="1.16.0" rev="1" 7701404Svbart@nginx.com date="2020-03-12" time="18:00:00 +0300" 7711404Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 7721404Svbart@nginx.com 7731404Svbart@nginx.com<change type="feature"> 7741404Svbart@nginx.com<para> 7751404Svbart@nginx.combasic load-balancing support with round-robin. 7761404Svbart@nginx.com</para> 7771404Svbart@nginx.com</change> 7781404Svbart@nginx.com 7791404Svbart@nginx.com<change type="feature"> 7801404Svbart@nginx.com<para> 7811404Svbart@nginx.coma "fallback" option that performs an alternative action if a request can't be 7821404Svbart@nginx.comserved from the "share" directory. 7831404Svbart@nginx.com</para> 7841404Svbart@nginx.com</change> 7851404Svbart@nginx.com 7861404Svbart@nginx.com<change type="feature"> 7871404Svbart@nginx.com<para> 7881404Svbart@nginx.comreduced memory consumption by dumping large request bodies to disk. 7891404Svbart@nginx.com</para> 7901404Svbart@nginx.com</change> 7911404Svbart@nginx.com 7921404Svbart@nginx.com<change type="feature"> 7931404Svbart@nginx.com<para> 7941404Svbart@nginx.comstripping UTF-8 BOM and JavaScript-style comments from uploaded JSON. 7951404Svbart@nginx.com</para> 7961404Svbart@nginx.com</change> 7971404Svbart@nginx.com 7981404Svbart@nginx.com<change type="bugfix"> 7991404Svbart@nginx.com<para> 8001404Svbart@nginx.comnegative address matching in router might work improperly in combination with 8011404Svbart@nginx.comnon-negative patterns. 8021404Svbart@nginx.com</para> 8031404Svbart@nginx.com</change> 8041404Svbart@nginx.com 8051404Svbart@nginx.com<change type="bugfix"> 8061404Svbart@nginx.com<para> 8071404Svbart@nginx.comJava Spring applications failed to run; the bug had appeared in 1.10.0. 8081404Svbart@nginx.com</para> 8091404Svbart@nginx.com</change> 8101404Svbart@nginx.com 8111404Svbart@nginx.com<change type="bugfix"> 8121404Svbart@nginx.com<para> 8131404Svbart@nginx.comPHP 7.4 was broken if it was built with thread safety enabled. 8141404Svbart@nginx.com</para> 8151404Svbart@nginx.com</change> 8161404Svbart@nginx.com 8171404Svbart@nginx.com<change type="bugfix"> 8181404Svbart@nginx.com<para> 8191404Svbart@nginx.comcompatibility issues with some Python applications. 8201404Svbart@nginx.com</para> 8211404Svbart@nginx.com</change> 8221404Svbart@nginx.com 8231404Svbart@nginx.com</changes> 8241404Svbart@nginx.com 8251404Svbart@nginx.com 8261404Svbart@nginx.com<changes apply="unit-php 8271404Svbart@nginx.com unit-python unit-python2.7 8281404Svbart@nginx.com unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7 8291404Svbart@nginx.com unit-python3.8 8301404Svbart@nginx.com unit-go 8311404Svbart@nginx.com unit-perl 8321404Svbart@nginx.com unit-ruby 8331404Svbart@nginx.com unit-jsc-common unit-jsc8 unit-jsc10 unit-jsc11" 8341357Svbart@nginx.com ver="1.15.0" rev="1" 8351357Svbart@nginx.com date="2020-02-06" time="18:00:00 +0300" 8361357Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 8371357Svbart@nginx.com 8381357Svbart@nginx.com<change> 8391357Svbart@nginx.com<para> 8401357Svbart@nginx.comNGINX Unit updated to 1.15.0. 8411357Svbart@nginx.com</para> 8421357Svbart@nginx.com</change> 8431357Svbart@nginx.com 8441357Svbart@nginx.com</changes> 8451357Svbart@nginx.com 8461357Svbart@nginx.com 8471357Svbart@nginx.com<changes apply="unit" ver="1.15.0" rev="1" 8481357Svbart@nginx.com date="2020-02-06" time="18:00:00 +0300" 8491357Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 8501357Svbart@nginx.com 8511357Svbart@nginx.com<change type="change"> 8521357Svbart@nginx.com<para> 8531357Svbart@nginx.comextensions of dynamically requested PHP scripts were restricted to ".php". 8541357Svbart@nginx.com</para> 8551357Svbart@nginx.com</change> 8561357Svbart@nginx.com 8571357Svbart@nginx.com<change type="feature"> 8581357Svbart@nginx.com<para> 8591357Svbart@nginx.comcompatibility with Ruby 2.7. 8601357Svbart@nginx.com</para> 8611357Svbart@nginx.com</change> 8621357Svbart@nginx.com 8631357Svbart@nginx.com<change type="bugfix"> 8641357Svbart@nginx.com<para> 8651357Svbart@nginx.comsegmentation fault might have occurred in the router process with multiple 8661357Svbart@nginx.comapplication processes under load; the bug had appeared in 1.14.0. 8671357Svbart@nginx.com</para> 8681357Svbart@nginx.com</change> 8691357Svbart@nginx.com 8701357Svbart@nginx.com<change type="bugfix"> 8711357Svbart@nginx.com<para> 8721357Svbart@nginx.comreceiving request body over TLS connection might have stalled. 8731357Svbart@nginx.com</para> 8741357Svbart@nginx.com</change> 8751357Svbart@nginx.com 8761357Svbart@nginx.com</changes> 8771357Svbart@nginx.com 8781357Svbart@nginx.com 8791357Svbart@nginx.com<changes apply="unit-php 8801357Svbart@nginx.com unit-python unit-python2.7 8811357Svbart@nginx.com unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7 8821357Svbart@nginx.com unit-python3.8 8831357Svbart@nginx.com unit-go 8841357Svbart@nginx.com unit-perl 8851357Svbart@nginx.com unit-ruby 8861357Svbart@nginx.com unit-jsc-common unit-jsc8 unit-jsc10 unit-jsc11" 8871330Svbart@nginx.com ver="1.14.0" rev="1" 8881330Svbart@nginx.com date="2019-12-26" time="18:00:00 +0300" 8891330Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 8901330Svbart@nginx.com 8911330Svbart@nginx.com<change> 8921330Svbart@nginx.com<para> 8931330Svbart@nginx.comNGINX Unit updated to 1.14.0. 8941330Svbart@nginx.com</para> 8951330Svbart@nginx.com</change> 8961330Svbart@nginx.com 8971330Svbart@nginx.com</changes> 8981330Svbart@nginx.com 8991330Svbart@nginx.com 9001330Svbart@nginx.com<changes apply="unit" ver="1.14.0" rev="1" 9011330Svbart@nginx.com date="2019-12-26" time="18:00:00 +0300" 9021330Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 9031330Svbart@nginx.com 9041330Svbart@nginx.com<change type="change"> 9051330Svbart@nginx.com<para> 9061330Svbart@nginx.comthe Go package import name changed to "unit.nginx.org/go". 9071330Svbart@nginx.com</para> 9081330Svbart@nginx.com</change> 9091330Svbart@nginx.com 9101330Svbart@nginx.com<change type="change"> 9111330Svbart@nginx.com<para> 9121330Svbart@nginx.comGo package now links to libunit instead of including library sources. 9131330Svbart@nginx.com</para> 9141330Svbart@nginx.com</change> 9151330Svbart@nginx.com 9161330Svbart@nginx.com<change type="feature"> 9171330Svbart@nginx.com<para> 9181330Svbart@nginx.comability to change user and group for isolated applications when Unit daemon 9191330Svbart@nginx.comruns as an unprivileged user. 9201330Svbart@nginx.com</para> 9211330Svbart@nginx.com</change> 9221330Svbart@nginx.com 9231330Svbart@nginx.com<change type="feature"> 9241330Svbart@nginx.com<para> 9251330Svbart@nginx.comrequest routing by source and destination addresses and ports. 9261330Svbart@nginx.com</para> 9271330Svbart@nginx.com</change> 9281330Svbart@nginx.com 9291330Svbart@nginx.com<change type="bugfix"> 9301330Svbart@nginx.com<para> 9311330Svbart@nginx.commemory bloat on large responses. 9321330Svbart@nginx.com</para> 9331330Svbart@nginx.com</change> 9341330Svbart@nginx.com 9351330Svbart@nginx.com</changes> 9361330Svbart@nginx.com 9371330Svbart@nginx.com 9381290Sdefan@nginx.com<changes apply="unit-go1.13" ver="1.13.0" rev="1" 9391290Sdefan@nginx.com date="2019-11-20" time="09:00:00 +0300" 9401290Sdefan@nginx.com packager="Andrei Belov <defan@nginx.com>"> 9411290Sdefan@nginx.com 9421290Sdefan@nginx.com<change> 9431290Sdefan@nginx.com<para> 9441290Sdefan@nginx.comInitial release of Go 1.13 module for NGINX Unit. 9451290Sdefan@nginx.com</para> 9461290Sdefan@nginx.com</change> 9471290Sdefan@nginx.com 9481290Sdefan@nginx.com</changes> 9491290Sdefan@nginx.com 9501290Sdefan@nginx.com 9511290Sdefan@nginx.com<changes apply="unit-go1.12" ver="1.13.0" rev="1" 9521290Sdefan@nginx.com date="2019-11-20" time="09:00:00 +0300" 9531290Sdefan@nginx.com packager="Andrei Belov <defan@nginx.com>"> 9541290Sdefan@nginx.com 9551290Sdefan@nginx.com<change> 9561290Sdefan@nginx.com<para> 9571290Sdefan@nginx.comInitial release of Go 1.12 module for NGINX Unit. 9581290Sdefan@nginx.com</para> 9591290Sdefan@nginx.com</change> 9601290Sdefan@nginx.com 9611290Sdefan@nginx.com</changes> 9621290Sdefan@nginx.com 9631290Sdefan@nginx.com 9641289Sdefan@nginx.com<changes apply="unit-python3.8" ver="1.13.0" rev="1" 9651289Sdefan@nginx.com date="2019-11-18" time="14:20:00 +0300" 9661289Sdefan@nginx.com packager="Andrei Belov <defan@nginx.com>"> 9671289Sdefan@nginx.com 9681289Sdefan@nginx.com<change> 9691289Sdefan@nginx.com<para> 9701289Sdefan@nginx.comInitial release of Python 3.8 module for NGINX Unit. 9711289Sdefan@nginx.com</para> 9721289Sdefan@nginx.com</change> 9731289Sdefan@nginx.com 9741289Sdefan@nginx.com</changes> 9751289Sdefan@nginx.com 9761289Sdefan@nginx.com 9771185Svbart@nginx.com<changes apply="unit-php 9781185Svbart@nginx.com unit-python unit-python2.7 9791185Svbart@nginx.com unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7 9801185Svbart@nginx.com unit-go unit-go1.7 unit-go1.8 unit-go1.9 unit-go1.10 unit-go1.11 9811185Svbart@nginx.com unit-perl 9821185Svbart@nginx.com unit-ruby 9831185Svbart@nginx.com unit-jsc-common unit-jsc8 unit-jsc10 unit-jsc11" 9841284Svbart@nginx.com ver="1.13.0" rev="1" 9851284Svbart@nginx.com date="2019-11-14" time="18:00:00 +0300" 9861284Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 9871284Svbart@nginx.com 9881284Svbart@nginx.com<change> 9891284Svbart@nginx.com<para> 9901284Svbart@nginx.comNGINX Unit updated to 1.13.0. 9911284Svbart@nginx.com</para> 9921284Svbart@nginx.com</change> 9931284Svbart@nginx.com 9941284Svbart@nginx.com</changes> 9951284Svbart@nginx.com 9961284Svbart@nginx.com 9971284Svbart@nginx.com<changes apply="unit" ver="1.13.0" rev="1" 9981284Svbart@nginx.com date="2019-11-14" time="18:00:00 +0300" 9991284Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 10001284Svbart@nginx.com 10011284Svbart@nginx.com<change type="feature"> 10021284Svbart@nginx.com<para> 10031284Svbart@nginx.combasic support for HTTP reverse proxying. 10041284Svbart@nginx.com</para> 10051284Svbart@nginx.com</change> 10061284Svbart@nginx.com 10071284Svbart@nginx.com<change type="feature"> 10081284Svbart@nginx.com<para> 10091284Svbart@nginx.comcompatibility with Python 3.8. 10101284Svbart@nginx.com</para> 10111284Svbart@nginx.com</change> 10121284Svbart@nginx.com 10131284Svbart@nginx.com<change type="bugfix"> 10141284Svbart@nginx.com<para> 10151284Svbart@nginx.commemory leak in Python application processes when the close handler was used. 10161284Svbart@nginx.com</para> 10171284Svbart@nginx.com</change> 10181284Svbart@nginx.com 10191284Svbart@nginx.com<change type="bugfix"> 10201284Svbart@nginx.com<para> 10211284Svbart@nginx.comthreads in Python applications might not work correctly. 10221284Svbart@nginx.com</para> 10231284Svbart@nginx.com</change> 10241284Svbart@nginx.com 10251284Svbart@nginx.com<change type="bugfix"> 10261284Svbart@nginx.com<para> 10271284Svbart@nginx.comRuby on Rails applications might not work on Ruby 2.6. 10281284Svbart@nginx.com</para> 10291284Svbart@nginx.com</change> 10301284Svbart@nginx.com 10311284Svbart@nginx.com<change type="bugfix"> 10321284Svbart@nginx.com<para> 10331284Svbart@nginx.combacktraces for uncaught exceptions in Python 3 might be logged with significant 10341284Svbart@nginx.comdelays. 10351284Svbart@nginx.com</para> 10361284Svbart@nginx.com</change> 10371284Svbart@nginx.com 10381284Svbart@nginx.com<change type="bugfix"> 10391284Svbart@nginx.com<para> 10401284Svbart@nginx.comexplicit setting a namespaces isolation option to false might have enabled it. 10411284Svbart@nginx.com</para> 10421284Svbart@nginx.com</change> 10431284Svbart@nginx.com 10441284Svbart@nginx.com</changes> 10451284Svbart@nginx.com 10461284Svbart@nginx.com 10471284Svbart@nginx.com<changes apply="unit-php 10481284Svbart@nginx.com unit-python unit-python2.7 10491284Svbart@nginx.com unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7 10501284Svbart@nginx.com unit-go unit-go1.7 unit-go1.8 unit-go1.9 unit-go1.10 unit-go1.11 10511284Svbart@nginx.com unit-perl 10521284Svbart@nginx.com unit-ruby 10531284Svbart@nginx.com unit-jsc-common unit-jsc8 unit-jsc10 unit-jsc11" 10541222Svbart@nginx.com ver="1.12.0" rev="1" 10551222Svbart@nginx.com date="2019-10-03" time="18:00:00 +0300" 10561222Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 10571222Svbart@nginx.com 10581222Svbart@nginx.com<change> 10591222Svbart@nginx.com<para> 10601222Svbart@nginx.comNGINX Unit updated to 1.12.0. 10611222Svbart@nginx.com</para> 10621222Svbart@nginx.com</change> 10631222Svbart@nginx.com 10641222Svbart@nginx.com</changes> 10651222Svbart@nginx.com 10661222Svbart@nginx.com 10671222Svbart@nginx.com<changes apply="unit" ver="1.12.0" rev="1" 10681222Svbart@nginx.com date="2019-10-03" time="18:00:00 +0300" 10691222Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 10701222Svbart@nginx.com 10711222Svbart@nginx.com<change type="feature"> 10721222Svbart@nginx.com<para> 10731222Svbart@nginx.comcompatibility with PHP 7.4. 10741222Svbart@nginx.com</para> 10751222Svbart@nginx.com</change> 10761222Svbart@nginx.com 10771222Svbart@nginx.com<change type="bugfix"> 10781222Svbart@nginx.com<para> 10791222Svbart@nginx.comdescriptors leak on process creation; the bug had appeared in 1.11.0. 10801222Svbart@nginx.com</para> 10811222Svbart@nginx.com</change> 10821222Svbart@nginx.com 10831222Svbart@nginx.com<change type="bugfix"> 10841222Svbart@nginx.com<para> 10851222Svbart@nginx.comTLS connection might be closed prematurely while sending response. 10861222Svbart@nginx.com</para> 10871222Svbart@nginx.com</change> 10881222Svbart@nginx.com 10891222Svbart@nginx.com<change type="bugfix"> 10901222Svbart@nginx.com<para> 10911222Svbart@nginx.comsegmentation fault might have occurred if an irregular file was requested. 10921222Svbart@nginx.com</para> 10931222Svbart@nginx.com</change> 10941222Svbart@nginx.com 10951222Svbart@nginx.com</changes> 10961222Svbart@nginx.com 10971222Svbart@nginx.com 10981222Svbart@nginx.com 10991222Svbart@nginx.com<changes apply="unit-php 11001222Svbart@nginx.com unit-python unit-python2.7 11011222Svbart@nginx.com unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7 11021222Svbart@nginx.com unit-go unit-go1.7 unit-go1.8 unit-go1.9 unit-go1.10 unit-go1.11 11031222Svbart@nginx.com unit-perl 11041222Svbart@nginx.com unit-ruby 11051222Svbart@nginx.com unit-jsc-common unit-jsc8 unit-jsc10 unit-jsc11" 11061185Svbart@nginx.com ver="1.11.0" rev="1" 11071185Svbart@nginx.com date="2019-09-19" time="18:00:00 +0300" 11081185Svbart@nginx.com packager="Konstantin Pavlov <thresh@nginx.com>"> 11091185Svbart@nginx.com 11101185Svbart@nginx.com<change> 11111185Svbart@nginx.com<para> 11121185Svbart@nginx.comNGINX Unit updated to 1.11.0. 11131185Svbart@nginx.com</para> 11141185Svbart@nginx.com</change> 11151185Svbart@nginx.com 11161185Svbart@nginx.com</changes> 11171185Svbart@nginx.com 11181185Svbart@nginx.com 11191185Svbart@nginx.com<changes apply="unit" ver="1.11.0" rev="1" 11201185Svbart@nginx.com date="2019-09-19" time="18:00:00 +0300" 11211185Svbart@nginx.com packager="Konstantin Pavlov <thresh@nginx.com>"> 11221185Svbart@nginx.com 11231185Svbart@nginx.com<change type="feature"> 11241185Svbart@nginx.com<para> 11251185Svbart@nginx.combasic support for serving static files. 11261185Svbart@nginx.com</para> 11271185Svbart@nginx.com</change> 11281185Svbart@nginx.com 11291185Svbart@nginx.com<change type="feature"> 11301185Svbart@nginx.com<para> 11311185Svbart@nginx.comisolation of application processes with Linux namespaces. 11321185Svbart@nginx.com</para> 11331185Svbart@nginx.com</change> 11341185Svbart@nginx.com 11351185Svbart@nginx.com<change type="feature"> 11361185Svbart@nginx.com<para> 11371185Svbart@nginx.combuilt-in WebSocket server implementation for Java Servlet Containers. 11381185Svbart@nginx.com</para> 11391185Svbart@nginx.com</change> 11401185Svbart@nginx.com 11411185Svbart@nginx.com<change type="feature"> 11421185Svbart@nginx.com<para> 11431185Svbart@nginx.comdirect addressing of API configuration options containing slashes "/" 11441185Svbart@nginx.comusing URI encoding (%2F). 11451185Svbart@nginx.com</para> 11461185Svbart@nginx.com</change> 11471185Svbart@nginx.com 11481185Svbart@nginx.com<change type="bugfix"> 11491185Svbart@nginx.com<para> 11501185Svbart@nginx.comsegmentation fault might have occurred in Go applications under high load. 11511185Svbart@nginx.com</para> 11521185Svbart@nginx.com</change> 11531185Svbart@nginx.com 11541185Svbart@nginx.com<change type="bugfix"> 11551185Svbart@nginx.com<para> 11561185Svbart@nginx.comWebSocket support was broken if Unit was built with some linkers other than 11571185Svbart@nginx.comGNU ld (e.g. gold or LLD). 11581185Svbart@nginx.com</para> 11591185Svbart@nginx.com</change> 11601185Svbart@nginx.com 11611185Svbart@nginx.com</changes> 11621185Svbart@nginx.com 11631185Svbart@nginx.com 11641142Sdefan@nginx.com<changes apply="unit 11651142Sdefan@nginx.com unit-php 11661142Sdefan@nginx.com unit-python unit-python2.7 11671142Sdefan@nginx.com unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7 11681142Sdefan@nginx.com unit-go unit-go1.7 unit-go1.8 unit-go1.9 unit-go1.10 unit-go1.11 11691142Sdefan@nginx.com unit-perl 11701142Sdefan@nginx.com unit-ruby 11711142Sdefan@nginx.com unit-jsc-common unit-jsc8 unit-jsc10 unit-jsc11" 11721142Sdefan@nginx.com ver="1.10.0" rev="2" 11731142Sdefan@nginx.com date="2019-08-23" time="12:00:00 +0300" 11741142Sdefan@nginx.com packager="Andrei Belov <defan@nginx.com>"> 11751142Sdefan@nginx.com 11761142Sdefan@nginx.com<change type="bugfix"> 11771142Sdefan@nginx.com<para> 11781142Sdefan@nginx.commissed header files added to unit development package. 11791142Sdefan@nginx.com</para> 11801142Sdefan@nginx.com</change> 11811142Sdefan@nginx.com 11821142Sdefan@nginx.com</changes> 11831142Sdefan@nginx.com 11841142Sdefan@nginx.com 11851134Svbart@nginx.com<changes apply="unit-php 11861134Svbart@nginx.com unit-python unit-python2.7 11871134Svbart@nginx.com unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7 11881134Svbart@nginx.com unit-go unit-go1.7 unit-go1.8 unit-go1.9 unit-go1.10 unit-go1.11 11891134Svbart@nginx.com unit-perl 11901134Svbart@nginx.com unit-ruby 11911134Svbart@nginx.com unit-jsc-common unit-jsc8 unit-jsc10 unit-jsc11" 11921134Svbart@nginx.com ver="1.10.0" rev="1" 11931134Svbart@nginx.com date="2019-08-22" time="18:00:00 +0300" 11941134Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 11951134Svbart@nginx.com 11961134Svbart@nginx.com<change> 11971134Svbart@nginx.com<para> 11981134Svbart@nginx.comNGINX Unit updated to 1.10.0. 11991134Svbart@nginx.com</para> 12001134Svbart@nginx.com</change> 12011134Svbart@nginx.com 12021134Svbart@nginx.com</changes> 12031134Svbart@nginx.com 12041134Svbart@nginx.com 12051134Svbart@nginx.com<changes apply="unit" ver="1.10.0" rev="1" 12061134Svbart@nginx.com date="2019-08-22" time="18:00:00 +0300" 12071134Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 12081134Svbart@nginx.com 12091134Svbart@nginx.com<change type="change"> 12101134Svbart@nginx.com<para> 12111134Svbart@nginx.commatching of cookies in routes made case sensitive. 12121134Svbart@nginx.com</para> 12131134Svbart@nginx.com</change> 12141134Svbart@nginx.com 12151134Svbart@nginx.com<change type="change"> 12161134Svbart@nginx.com<para> 12171134Svbart@nginx.comdecreased log level of common errors when clients close connections. 12181134Svbart@nginx.com</para> 12191134Svbart@nginx.com</change> 12201134Svbart@nginx.com 12211134Svbart@nginx.com<change type="change"> 12221134Svbart@nginx.com<para> 12231134Svbart@nginx.comremoved the Perl module's "--include=" ./configure option. 12241134Svbart@nginx.com</para> 12251134Svbart@nginx.com</change> 12261134Svbart@nginx.com 12271134Svbart@nginx.com<change type="feature"> 12281134Svbart@nginx.com<para> 12291134Svbart@nginx.combuilt-in WebSocket server implementation for Node.js module. 12301134Svbart@nginx.com</para> 12311134Svbart@nginx.com</change> 12321134Svbart@nginx.com 12331134Svbart@nginx.com<change type="feature"> 12341134Svbart@nginx.com<para> 12351134Svbart@nginx.comsplitting PATH_INFO from request URI in PHP module. 12361134Svbart@nginx.com</para> 12371134Svbart@nginx.com</change> 12381134Svbart@nginx.com 12391134Svbart@nginx.com<change type="feature"> 12401134Svbart@nginx.com<para> 12411134Svbart@nginx.comrequest routing by scheme (HTTP or HTTPS). 12421134Svbart@nginx.com</para> 12431134Svbart@nginx.com</change> 12441134Svbart@nginx.com 12451134Svbart@nginx.com<change type="feature"> 12461134Svbart@nginx.com<para> 12471134Svbart@nginx.comsupport for multipart requests body in Java module. 12481134Svbart@nginx.com</para> 12491134Svbart@nginx.com</change> 12501134Svbart@nginx.com 12511134Svbart@nginx.com<change type="feature"> 12521134Svbart@nginx.com<para> 12531134Svbart@nginx.comimproved API compatibility with Node.js 11.10 or later. 12541134Svbart@nginx.com</para> 12551134Svbart@nginx.com</change> 12561134Svbart@nginx.com 12571134Svbart@nginx.com<change type="bugfix"> 12581134Svbart@nginx.com<para> 12591134Svbart@nginx.comreconfiguration failed if "listeners" or "applications" objects were missing. 12601134Svbart@nginx.com</para> 12611134Svbart@nginx.com</change> 12621134Svbart@nginx.com 12631134Svbart@nginx.com<change type="bugfix"> 12641134Svbart@nginx.com<para> 12651134Svbart@nginx.comapplying a large configuration might have failed. 12661134Svbart@nginx.com</para> 12671134Svbart@nginx.com</change> 12681134Svbart@nginx.com 12691134Svbart@nginx.com</changes> 12701134Svbart@nginx.com 12711134Svbart@nginx.com 12721069Svbart@nginx.com<changes apply="unit-go1.11" ver="1.9.0" rev="1" 12731069Svbart@nginx.com date="2019-05-30" time="18:00:00 +0300" 12741069Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 12751069Svbart@nginx.com 12761069Svbart@nginx.com<change> 12771069Svbart@nginx.com<para> 12781069Svbart@nginx.comInitial release of Go 1.11 module for NGINX Unit. 12791069Svbart@nginx.com</para> 12801069Svbart@nginx.com</change> 12811069Svbart@nginx.com 12821069Svbart@nginx.com</changes> 12831069Svbart@nginx.com 12841069Svbart@nginx.com 12851069Svbart@nginx.com<changes apply="unit-php 12861069Svbart@nginx.com unit-python unit-python2.7 12871069Svbart@nginx.com unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7 12881069Svbart@nginx.com unit-go unit-go1.7 unit-go1.8 unit-go1.9 unit-go1.10 12891069Svbart@nginx.com unit-perl 12901069Svbart@nginx.com unit-ruby 12911069Svbart@nginx.com unit-jsc-common unit-jsc8 unit-jsc10 unit-jsc11" 12921069Svbart@nginx.com ver="1.9.0" rev="1" 12931069Svbart@nginx.com date="2019-05-30" time="18:00:00 +0300" 12941069Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 12951069Svbart@nginx.com 12961069Svbart@nginx.com<change> 12971069Svbart@nginx.com<para> 12981069Svbart@nginx.comNGINX Unit updated to 1.9.0. 12991069Svbart@nginx.com</para> 13001069Svbart@nginx.com</change> 13011069Svbart@nginx.com 13021069Svbart@nginx.com</changes> 13031069Svbart@nginx.com 13041069Svbart@nginx.com 13051069Svbart@nginx.com<changes apply="unit" ver="1.9.0" rev="1" 13061069Svbart@nginx.com date="2019-05-30" time="18:00:00 +0300" 13071069Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 13081069Svbart@nginx.com 13091069Svbart@nginx.com<change type="feature"> 13101069Svbart@nginx.com<para> 13111069Svbart@nginx.comrequest routing by arguments, headers, and cookies. 13121069Svbart@nginx.com</para> 13131069Svbart@nginx.com</change> 13141069Svbart@nginx.com 13151069Svbart@nginx.com<change type="feature"> 13161069Svbart@nginx.com<para> 13171069Svbart@nginx.comroute matching patterns allow a wildcard in the middle. 13181069Svbart@nginx.com</para> 13191069Svbart@nginx.com</change> 13201069Svbart@nginx.com 13211069Svbart@nginx.com<change type="feature"> 13221069Svbart@nginx.com<para> 13231069Svbart@nginx.comPOST operation for appending elements to arrays in configuration. 13241069Svbart@nginx.com</para> 13251069Svbart@nginx.com</change> 13261069Svbart@nginx.com 13271069Svbart@nginx.com<change type="feature"> 13281069Svbart@nginx.com<para> 13291069Svbart@nginx.comsupport for changing credentials using CAP_SETUID and CAP_SETGID capabilities 13301069Svbart@nginx.comon Linux without running main process as privileged user. 13311069Svbart@nginx.com</para> 13321069Svbart@nginx.com</change> 13331069Svbart@nginx.com 13341069Svbart@nginx.com<change type="bugfix"> 13351069Svbart@nginx.com<para> 13361069Svbart@nginx.commemory leak in the router process might have happened when a client 13371069Svbart@nginx.comprematurely closed the connection. 13381069Svbart@nginx.com</para> 13391069Svbart@nginx.com</change> 13401069Svbart@nginx.com 13411069Svbart@nginx.com<change type="bugfix"> 13421069Svbart@nginx.com<para> 13431069Svbart@nginx.comapplying a large configuration might have failed. 13441069Svbart@nginx.com</para> 13451069Svbart@nginx.com</change> 13461069Svbart@nginx.com 13471069Svbart@nginx.com<change type="bugfix"> 13481069Svbart@nginx.com<para> 13491069Svbart@nginx.comPUT and DELETE operations on array elements in configuration did not work. 13501069Svbart@nginx.com</para> 13511069Svbart@nginx.com</change> 13521069Svbart@nginx.com 13531069Svbart@nginx.com<change type="bugfix"> 13541069Svbart@nginx.com<para> 13551069Svbart@nginx.comrequest schema in applications did not reflect TLS connections. 13561069Svbart@nginx.com</para> 13571069Svbart@nginx.com</change> 13581069Svbart@nginx.com 13591069Svbart@nginx.com<change type="bugfix"> 13601069Svbart@nginx.com<para> 13611069Svbart@nginx.comrestored compatibility with Node.js applications that use 13621069Svbart@nginx.comServerResponse._implicitHeader() function; the bug had appeared in 1.7. 13631069Svbart@nginx.com</para> 13641069Svbart@nginx.com</change> 13651069Svbart@nginx.com 13661069Svbart@nginx.com<change type="bugfix"> 13671069Svbart@nginx.com<para> 13681069Svbart@nginx.comvarious compatibility issues with Node.js applications. 13691069Svbart@nginx.com</para> 13701069Svbart@nginx.com</change> 13711069Svbart@nginx.com 13721069Svbart@nginx.com</changes> 13731069Svbart@nginx.com 13741069Svbart@nginx.com 1375991Svbart@nginx.com<changes apply="unit-jsc-common" ver="1.8.0" rev="1" 1376991Svbart@nginx.com date="2019-03-01" time="18:00:00 +0300" 1377991Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 1378991Svbart@nginx.com 1379991Svbart@nginx.com<change> 1380991Svbart@nginx.com<para> 1381991Svbart@nginx.comInitial release of Java common packages for NGINX Unit. 1382991Svbart@nginx.com</para> 1383991Svbart@nginx.com</change> 1384991Svbart@nginx.com 1385991Svbart@nginx.com</changes> 1386991Svbart@nginx.com 1387991Svbart@nginx.com 1388991Svbart@nginx.com<changes apply="unit-jsc8" ver="1.8.0" rev="1" 1389991Svbart@nginx.com date="2019-03-01" time="18:00:00 +0300" 1390991Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 1391991Svbart@nginx.com 1392991Svbart@nginx.com<change> 1393991Svbart@nginx.com<para> 1394991Svbart@nginx.comInitial release of Java 8 module for NGINX Unit. 1395991Svbart@nginx.com</para> 1396991Svbart@nginx.com</change> 1397991Svbart@nginx.com 1398991Svbart@nginx.com</changes> 1399991Svbart@nginx.com 1400991Svbart@nginx.com 1401991Svbart@nginx.com<changes apply="unit-jsc10" ver="1.8.0" rev="1" 1402991Svbart@nginx.com date="2019-03-01" time="18:00:00 +0300" 1403991Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 1404991Svbart@nginx.com 1405991Svbart@nginx.com<change> 1406991Svbart@nginx.com<para> 1407991Svbart@nginx.comInitial release of Java 10 module for NGINX Unit. 1408991Svbart@nginx.com</para> 1409991Svbart@nginx.com</change> 1410991Svbart@nginx.com 1411991Svbart@nginx.com</changes> 1412991Svbart@nginx.com 1413991Svbart@nginx.com 1414991Svbart@nginx.com<changes apply="unit-jsc11" ver="1.8.0" rev="1" 1415991Svbart@nginx.com date="2019-03-01" time="18:00:00 +0300" 1416991Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 1417991Svbart@nginx.com 1418991Svbart@nginx.com<change> 1419991Svbart@nginx.com<para> 1420991Svbart@nginx.comInitial release of Java 11 module for NGINX Unit. 1421991Svbart@nginx.com</para> 1422991Svbart@nginx.com</change> 1423991Svbart@nginx.com 1424991Svbart@nginx.com</changes> 1425991Svbart@nginx.com 1426991Svbart@nginx.com 1427991Svbart@nginx.com<changes apply="unit-php 1428991Svbart@nginx.com unit-python unit-python2.7 1429991Svbart@nginx.com unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7 1430991Svbart@nginx.com unit-go unit-go1.7 unit-go1.8 unit-go1.9 unit-go1.10 1431991Svbart@nginx.com unit-perl 1432991Svbart@nginx.com unit-ruby" 1433991Svbart@nginx.com ver="1.8.0" rev="1" 1434991Svbart@nginx.com date="2019-03-01" time="18:00:00 +0300" 1435991Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 1436991Svbart@nginx.com 1437991Svbart@nginx.com<change> 1438991Svbart@nginx.com<para> 1439991Svbart@nginx.comNGINX Unit updated to 1.8.0. 1440991Svbart@nginx.com</para> 1441991Svbart@nginx.com</change> 1442991Svbart@nginx.com 1443991Svbart@nginx.com</changes> 1444991Svbart@nginx.com 1445991Svbart@nginx.com 1446991Svbart@nginx.com<changes apply="unit" ver="1.8.0" rev="1" 1447991Svbart@nginx.com date="2019-03-01" time="18:00:00 +0300" 1448991Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 1449991Svbart@nginx.com 1450991Svbart@nginx.com<change type="change"> 1451991Svbart@nginx.com<para> 1452991Svbart@nginx.comnow three numbers are always used for versioning: major, minor, 1453991Svbart@nginx.comand patch versions. 1454991Svbart@nginx.com</para> 1455991Svbart@nginx.com</change> 1456991Svbart@nginx.com 1457991Svbart@nginx.com<change type="change"> 1458991Svbart@nginx.com<para> 1459991Svbart@nginx.comnow QUERY_STRING is always defined even if the request does not include 1460991Svbart@nginx.comthe query component. 1461991Svbart@nginx.com</para> 1462991Svbart@nginx.com</change> 1463991Svbart@nginx.com 1464991Svbart@nginx.com<change type="feature"> 1465991Svbart@nginx.com<para> 1466991Svbart@nginx.combasic internal request routing by Host, URI, and method. 1467991Svbart@nginx.com</para> 1468991Svbart@nginx.com</change> 1469991Svbart@nginx.com 1470991Svbart@nginx.com<change type="feature"> 1471991Svbart@nginx.com<para> 1472991Svbart@nginx.comexperimental support for Java Servlet Containers. 1473991Svbart@nginx.com</para> 1474991Svbart@nginx.com</change> 1475991Svbart@nginx.com 1476991Svbart@nginx.com<change type="bugfix"> 1477991Svbart@nginx.com<para> 1478991Svbart@nginx.comsegmentation fault might have occurred in the router process. 1479991Svbart@nginx.com</para> 1480991Svbart@nginx.com</change> 1481991Svbart@nginx.com 1482991Svbart@nginx.com<change type="bugfix"> 1483991Svbart@nginx.com<para> 1484991Svbart@nginx.comvarious potential memory leaks. 1485991Svbart@nginx.com</para> 1486991Svbart@nginx.com</change> 1487991Svbart@nginx.com 1488991Svbart@nginx.com<change type="bugfix"> 1489991Svbart@nginx.com<para> 1490991Svbart@nginx.comTLS connections might have stalled. 1491991Svbart@nginx.com</para> 1492991Svbart@nginx.com</change> 1493991Svbart@nginx.com 1494991Svbart@nginx.com<change type="bugfix"> 1495991Svbart@nginx.com<para> 1496991Svbart@nginx.comsome Perl applications might have failed to send the response body. 1497991Svbart@nginx.com</para> 1498991Svbart@nginx.com</change> 1499991Svbart@nginx.com 1500991Svbart@nginx.com<change type="bugfix"> 1501991Svbart@nginx.com<para> 1502991Svbart@nginx.comsome compilers with specific flags might have produced non-functioning builds; 1503991Svbart@nginx.comthe bug had appeared in 1.5. 1504991Svbart@nginx.com</para> 1505991Svbart@nginx.com</change> 1506991Svbart@nginx.com 1507991Svbart@nginx.com<change type="bugfix"> 1508991Svbart@nginx.com<para> 1509991Svbart@nginx.comNode.js package had wrong version number when installed from sources. 1510991Svbart@nginx.com</para> 1511991Svbart@nginx.com</change> 1512991Svbart@nginx.com 1513991Svbart@nginx.com</changes> 1514991Svbart@nginx.com 1515991Svbart@nginx.com 1516926Svbart@nginx.com<changes apply="unit-php 1517926Svbart@nginx.com unit-python unit-python2.7 1518926Svbart@nginx.com unit-python3.4 unit-python3.5 unit-python3.6 unit-python3.7 1519926Svbart@nginx.com unit-go unit-go1.7 unit-go1.8 unit-go1.9 unit-go1.10 1520926Svbart@nginx.com unit-perl 1521926Svbart@nginx.com unit-ruby" 1522926Svbart@nginx.com ver="1.7.1" rev="1" 1523926Svbart@nginx.com date="2019-02-07" time="18:00:00 +0300" 1524926Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 1525926Svbart@nginx.com 1526926Svbart@nginx.com<change> 1527926Svbart@nginx.com<para> 1528926Svbart@nginx.comNGINX Unit updated to 1.7.1. 1529926Svbart@nginx.com</para> 1530926Svbart@nginx.com</change> 1531926Svbart@nginx.com 1532926Svbart@nginx.com</changes> 1533926Svbart@nginx.com 1534926Svbart@nginx.com 1535926Svbart@nginx.com<changes apply="unit" ver="1.7.1" rev="1" 1536926Svbart@nginx.com date="2019-02-07" time="18:00:00 +0300" 1537926Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 1538926Svbart@nginx.com 1539926Svbart@nginx.com<change type="security"> 1540926Svbart@nginx.com<para> 1541926Svbart@nginx.coma heap memory buffer overflow might have been caused in the router process by 1542926Svbart@nginx.coma specially crafted request, potentially resulting in a segmentation fault or 1543926Svbart@nginx.comother unspecified behavior (CVE-2019-7401). 1544926Svbart@nginx.com</para> 1545926Svbart@nginx.com</change> 1546926Svbart@nginx.com 1547926Svbart@nginx.com<change type="bugfix"> 1548926Svbart@nginx.com<para> 1549926Svbart@nginx.cominstall of Go module failed without prior building of Unit daemon; 1550926Svbart@nginx.comthe bug had appeared in 1.7. 1551926Svbart@nginx.com</para> 1552926Svbart@nginx.com</change> 1553926Svbart@nginx.com 1554926Svbart@nginx.com</changes> 1555926Svbart@nginx.com 1556926Svbart@nginx.com 1557902Sdefan@nginx.com<changes apply="unit-python3.7" ver="1.7" rev="1" 1558902Sdefan@nginx.com date="2018-12-25" time="10:30:00 +0300" 1559902Sdefan@nginx.com packager="Andrei Belov <defan@nginx.com>"> 1560902Sdefan@nginx.com 1561902Sdefan@nginx.com<change> 1562902Sdefan@nginx.com<para> 1563902Sdefan@nginx.comInitial release of Python 3.7 module for NGINX Unit. 1564902Sdefan@nginx.com</para> 1565902Sdefan@nginx.com</change> 1566902Sdefan@nginx.com 1567902Sdefan@nginx.com</changes> 1568902Sdefan@nginx.com 1569902Sdefan@nginx.com 1570821Svbart@nginx.com<changes apply="unit-php 1571821Svbart@nginx.com unit-python unit-python2.7 1572821Svbart@nginx.com unit-python3.4 unit-python3.5 unit-python3.6 1573821Svbart@nginx.com unit-go unit-go1.7 unit-go1.8 unit-go1.9 unit-go1.10 1574821Svbart@nginx.com unit-perl 1575821Svbart@nginx.com unit-ruby" 1576886Svbart@nginx.com ver="1.7" rev="1" 1577886Svbart@nginx.com date="2018-12-20" time="18:00:00 +0300" 1578886Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 1579886Svbart@nginx.com 1580886Svbart@nginx.com<change> 1581886Svbart@nginx.com<para> 1582886Svbart@nginx.comNGINX Unit updated to 1.7. 1583886Svbart@nginx.com</para> 1584886Svbart@nginx.com</change> 1585886Svbart@nginx.com 1586886Svbart@nginx.com</changes> 1587886Svbart@nginx.com 1588886Svbart@nginx.com 1589886Svbart@nginx.com<changes apply="unit" ver="1.7" rev="1" 1590886Svbart@nginx.com date="2018-12-20" time="18:00:00 +0300" 1591886Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 1592886Svbart@nginx.com 1593886Svbart@nginx.com<change type="change"> 1594886Svbart@nginx.com<para> 1595886Svbart@nginx.comnow rpath is set in Ruby module only if the library was not found in default 1596886Svbart@nginx.comsearch paths; this allows to meet packaging restrictions on some systems. 1597886Svbart@nginx.com</para> 1598886Svbart@nginx.com</change> 1599886Svbart@nginx.com 1600886Svbart@nginx.com<change type="bugfix"> 1601886Svbart@nginx.com<para> 1602886Svbart@nginx.com"disable_functions" and "disable_classes" PHP options set via Control API 1603886Svbart@nginx.comdid not work. 1604886Svbart@nginx.com</para> 1605886Svbart@nginx.com</change> 1606886Svbart@nginx.com 1607886Svbart@nginx.com<change type="bugfix"> 1608886Svbart@nginx.com<para> 1609886Svbart@nginx.comPromises on request data in Node.js were not triggered. 1610886Svbart@nginx.com</para> 1611886Svbart@nginx.com</change> 1612886Svbart@nginx.com 1613886Svbart@nginx.com<change type="bugfix"> 1614886Svbart@nginx.com<para> 1615886Svbart@nginx.comvarious compatibility issues with Node.js applications. 1616886Svbart@nginx.com</para> 1617886Svbart@nginx.com</change> 1618886Svbart@nginx.com 1619886Svbart@nginx.com<change type="bugfix"> 1620886Svbart@nginx.com<para> 1621886Svbart@nginx.coma segmentation fault occurred in Node.js module if application tried to read 1622886Svbart@nginx.comrequest body after request.end() was called. 1623886Svbart@nginx.com</para> 1624886Svbart@nginx.com</change> 1625886Svbart@nginx.com 1626886Svbart@nginx.com<change type="bugfix"> 1627886Svbart@nginx.com<para> 1628886Svbart@nginx.coma segmentation fault occurred in Node.js module if application attempted to 1629886Svbart@nginx.comsend header twice. 1630886Svbart@nginx.com</para> 1631886Svbart@nginx.com</change> 1632886Svbart@nginx.com 1633886Svbart@nginx.com<change type="bugfix"> 1634886Svbart@nginx.com<para> 1635886Svbart@nginx.comnames of response header fields in Node.js module were erroneously treated as 1636886Svbart@nginx.comcase-sensitive. 1637886Svbart@nginx.com</para> 1638886Svbart@nginx.com</change> 1639886Svbart@nginx.com 1640886Svbart@nginx.com<change type="bugfix"> 1641886Svbart@nginx.com<para> 1642886Svbart@nginx.comuncatched exceptions in Node.js were not logged. 1643886Svbart@nginx.com</para> 1644886Svbart@nginx.com</change> 1645886Svbart@nginx.com 1646886Svbart@nginx.com<change type="bugfix"> 1647886Svbart@nginx.com<para> 1648886Svbart@nginx.comglobal install of Node.js module from sources was broken on some systems; 1649886Svbart@nginx.comthe bug had appeared in 1.6. 1650886Svbart@nginx.com</para> 1651886Svbart@nginx.com</change> 1652886Svbart@nginx.com 1653886Svbart@nginx.com<change type="bugfix"> 1654886Svbart@nginx.com<para> 1655886Svbart@nginx.comtraceback for exceptions during initialization of Python applications might not 1656886Svbart@nginx.combe logged. 1657886Svbart@nginx.com</para> 1658886Svbart@nginx.com</change> 1659886Svbart@nginx.com 1660886Svbart@nginx.com<change type="bugfix"> 1661886Svbart@nginx.com<para> 1662886Svbart@nginx.comPHP module build failed if PHP interpreter was built with thread safety 1663886Svbart@nginx.comenabled. 1664886Svbart@nginx.com</para> 1665886Svbart@nginx.com</change> 1666886Svbart@nginx.com 1667886Svbart@nginx.com</changes> 1668886Svbart@nginx.com 1669886Svbart@nginx.com 1670886Svbart@nginx.com<changes apply="unit-php 1671886Svbart@nginx.com unit-python unit-python2.7 1672886Svbart@nginx.com unit-python3.4 unit-python3.5 unit-python3.6 1673886Svbart@nginx.com unit-go unit-go1.7 unit-go1.8 unit-go1.9 unit-go1.10 1674886Svbart@nginx.com unit-perl 1675886Svbart@nginx.com unit-ruby" 1676846Svbart@nginx.com ver="1.6" rev="1" 1677846Svbart@nginx.com date="2018-11-15" time="18:00:00 +0300" 1678846Svbart@nginx.com packager="Konstantin Pavlov <thresh@nginx.com>"> 1679846Svbart@nginx.com 1680846Svbart@nginx.com<change> 1681846Svbart@nginx.com<para> 1682846Svbart@nginx.comNGINX Unit updated to 1.6. 1683846Svbart@nginx.com</para> 1684846Svbart@nginx.com</change> 1685846Svbart@nginx.com 1686846Svbart@nginx.com</changes> 1687846Svbart@nginx.com 1688846Svbart@nginx.com 1689846Svbart@nginx.com<changes apply="unit" ver="1.6" rev="1" 1690846Svbart@nginx.com date="2018-11-15" time="18:00:00 +0300" 1691846Svbart@nginx.com packager="Konstantin Pavlov <thresh@nginx.com>"> 1692846Svbart@nginx.com 1693846Svbart@nginx.com<change type="change"> 1694846Svbart@nginx.com<para> 1695846Svbart@nginx.com"make install" now installs Node.js module as well if it was configured. 1696846Svbart@nginx.com</para> 1697846Svbart@nginx.com</change> 1698846Svbart@nginx.com 1699846Svbart@nginx.com<change type="feature"> 1700846Svbart@nginx.com<para> 1701846Svbart@nginx.com"--local" ./configure option to install Node.js module locally. 1702846Svbart@nginx.com</para> 1703846Svbart@nginx.com</change> 1704846Svbart@nginx.com 1705846Svbart@nginx.com<change type="bugfix"> 1706846Svbart@nginx.com<para> 1707846Svbart@nginx.comNode.js module might have crashed due to broken reference counting. 1708846Svbart@nginx.com</para> 1709846Svbart@nginx.com</change> 1710846Svbart@nginx.com 1711846Svbart@nginx.com<change type="bugfix"> 1712846Svbart@nginx.com<para> 1713846Svbart@nginx.comasynchronous operations in Node.js might not have worked. 1714846Svbart@nginx.com</para> 1715846Svbart@nginx.com</change> 1716846Svbart@nginx.com 1717846Svbart@nginx.com<change type="bugfix"> 1718846Svbart@nginx.com<para> 1719846Svbart@nginx.comvarious compatibility issues with Node.js applications. 1720846Svbart@nginx.com</para> 1721846Svbart@nginx.com</change> 1722846Svbart@nginx.com 1723846Svbart@nginx.com<change type="bugfix"> 1724846Svbart@nginx.com<para> 1725846Svbart@nginx.com"freed pointer is out of pool" alerts might have appeared in log. 1726846Svbart@nginx.com</para> 1727846Svbart@nginx.com</change> 1728846Svbart@nginx.com 1729846Svbart@nginx.com<change type="bugfix"> 1730846Svbart@nginx.com<para> 1731885Svbart@nginx.commodule discovery did not work on 64-bit big-endian systems like IBM/S390x. 1732846Svbart@nginx.com</para> 1733846Svbart@nginx.com</change> 1734846Svbart@nginx.com 1735846Svbart@nginx.com</changes> 1736846Svbart@nginx.com 1737846Svbart@nginx.com 1738846Svbart@nginx.com<changes apply="unit-php 1739846Svbart@nginx.com unit-python unit-python2.7 1740846Svbart@nginx.com unit-python3.4 unit-python3.5 unit-python3.6 1741846Svbart@nginx.com unit-go unit-go1.7 unit-go1.8 unit-go1.9 unit-go1.10 1742846Svbart@nginx.com unit-perl 1743846Svbart@nginx.com unit-ruby" 1744821Svbart@nginx.com ver="1.5" rev="1" 1745821Svbart@nginx.com date="2018-10-25" time="18:00:00 +0300" 1746821Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 1747821Svbart@nginx.com 1748821Svbart@nginx.com<change> 1749821Svbart@nginx.com<para> 1750821Svbart@nginx.comNGINX Unit updated to 1.5. 1751821Svbart@nginx.com</para> 1752821Svbart@nginx.com</change> 1753821Svbart@nginx.com 1754821Svbart@nginx.com</changes> 1755821Svbart@nginx.com 1756821Svbart@nginx.com 1757820Svbart@nginx.com<changes apply="unit" ver="1.5" rev="1" 1758820Svbart@nginx.com date="2018-10-25" time="18:00:00 +0300" 1759820Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 1760820Svbart@nginx.com 1761820Svbart@nginx.com<change type="change"> 1762820Svbart@nginx.com<para> 1763820Svbart@nginx.comthe "type" of application object for Go was changed to "external". 1764820Svbart@nginx.com</para> 1765820Svbart@nginx.com</change> 1766820Svbart@nginx.com 1767820Svbart@nginx.com<change type="feature"> 1768820Svbart@nginx.com<para> 1769820Svbart@nginx.cominitial version of Node.js package with basic HTTP request-response support. 1770820Svbart@nginx.com</para> 1771820Svbart@nginx.com</change> 1772820Svbart@nginx.com 1773820Svbart@nginx.com<change type="feature"> 1774820Svbart@nginx.com<para> 1775820Svbart@nginx.comcompatibility with LibreSSL. 1776820Svbart@nginx.com</para> 1777820Svbart@nginx.com</change> 1778820Svbart@nginx.com 1779820Svbart@nginx.com<change type="feature"> 1780820Svbart@nginx.com<para> 1781820Svbart@nginx.com--libdir and --incdir ./configure options to install libunit headers 1782820Svbart@nginx.comand static library. 1783820Svbart@nginx.com</para> 1784820Svbart@nginx.com</change> 1785820Svbart@nginx.com 1786820Svbart@nginx.com<change type="bugfix"> 1787820Svbart@nginx.com<para> 1788820Svbart@nginx.comconnection might be closed prematurely while sending response; 1789820Svbart@nginx.comthe bug had appeared in 1.3. 1790820Svbart@nginx.com</para> 1791820Svbart@nginx.com</change> 1792820Svbart@nginx.com 1793820Svbart@nginx.com<change type="bugfix"> 1794820Svbart@nginx.com<para> 1795820Svbart@nginx.comapplication processes might have stopped handling requests, producing 1796820Svbart@nginx.com"last message send failed: Resource temporarily unavailable" alerts in log; 1797820Svbart@nginx.comthe bug had appeared in 1.4. 1798820Svbart@nginx.com</para> 1799820Svbart@nginx.com</change> 1800820Svbart@nginx.com 1801820Svbart@nginx.com<change type="bugfix"> 1802820Svbart@nginx.com<para> 1803885Svbart@nginx.comGo applications did not work when Unit was built with musl C library. 1804820Svbart@nginx.com</para> 1805820Svbart@nginx.com</change> 1806820Svbart@nginx.com 1807820Svbart@nginx.com</changes> 1808820Svbart@nginx.com 1809820Svbart@nginx.com 1810689Svbart@nginx.com<changes apply="unit-php 1811689Svbart@nginx.com unit-python unit-python2.7 1812689Svbart@nginx.com unit-python3.4 unit-python3.5 unit-python3.6 1813689Svbart@nginx.com unit-go unit-go1.7 unit-go1.8 unit-go1.9 unit-go1.10 1814689Svbart@nginx.com unit-perl 1815689Svbart@nginx.com unit-ruby" 1816788Sdefan@nginx.com ver="1.4" rev="2" 1817788Sdefan@nginx.com date="2018-09-27" time="13:30:00 +0300" 1818788Sdefan@nginx.com packager="Andrei Belov <defan@nginx.com>"> 1819788Sdefan@nginx.com 1820788Sdefan@nginx.com<change type="bugfix"> 1821788Sdefan@nginx.com<para> 1822788Sdefan@nginx.comcorrected instructions for launching sample application. 1823788Sdefan@nginx.com</para> 1824788Sdefan@nginx.com</change> 1825788Sdefan@nginx.com 1826788Sdefan@nginx.com</changes> 1827788Sdefan@nginx.com 1828788Sdefan@nginx.com 1829788Sdefan@nginx.com<changes apply="unit" ver="1.4" rev="2" 1830788Sdefan@nginx.com date="2018-09-27" time="13:30:00 +0300" 1831788Sdefan@nginx.com packager="Andrei Belov <defan@nginx.com>"> 1832788Sdefan@nginx.com 1833788Sdefan@nginx.com<change type="change"> 1834788Sdefan@nginx.com<para> 1835788Sdefan@nginx.comthe "saveconfig" and "loadconfig" action scripts were removed. 1836788Sdefan@nginx.com</para> 1837788Sdefan@nginx.com</change> 1838788Sdefan@nginx.com 1839788Sdefan@nginx.com</changes> 1840788Sdefan@nginx.com 1841788Sdefan@nginx.com 1842788Sdefan@nginx.com<changes apply="unit-php 1843788Sdefan@nginx.com unit-python unit-python2.7 1844788Sdefan@nginx.com unit-python3.4 unit-python3.5 unit-python3.6 1845788Sdefan@nginx.com unit-go unit-go1.7 unit-go1.8 unit-go1.9 unit-go1.10 1846788Sdefan@nginx.com unit-perl 1847788Sdefan@nginx.com unit-ruby" 1848783Svbart@nginx.com ver="1.4" rev="1" 1849783Svbart@nginx.com date="2018-09-20" time="18:00:00 +0300" 1850783Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 1851783Svbart@nginx.com 1852783Svbart@nginx.com<change> 1853783Svbart@nginx.com<para> 1854783Svbart@nginx.comNGINX Unit updated to 1.4. 1855783Svbart@nginx.com</para> 1856783Svbart@nginx.com</change> 1857783Svbart@nginx.com 1858783Svbart@nginx.com</changes> 1859783Svbart@nginx.com 1860783Svbart@nginx.com 1861783Svbart@nginx.com<changes apply="unit" ver="1.4" rev="1" 1862783Svbart@nginx.com date="2018-09-20" time="18:00:00 +0300" 1863783Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 1864783Svbart@nginx.com 1865783Svbart@nginx.com<change type="change"> 1866783Svbart@nginx.com<para> 1867783Svbart@nginx.comthe control API maps the configuration object only at "/config/". 1868783Svbart@nginx.com</para> 1869783Svbart@nginx.com</change> 1870783Svbart@nginx.com 1871783Svbart@nginx.com<change type="feature"> 1872783Svbart@nginx.com<para> 1873783Svbart@nginx.comTLS support for client connections. 1874783Svbart@nginx.com</para> 1875783Svbart@nginx.com</change> 1876783Svbart@nginx.com 1877783Svbart@nginx.com<change type="feature"> 1878783Svbart@nginx.com<para> 1879783Svbart@nginx.comTLS certificates storage control API. 1880783Svbart@nginx.com</para> 1881783Svbart@nginx.com</change> 1882783Svbart@nginx.com 1883783Svbart@nginx.com<change type="feature"> 1884783Svbart@nginx.com<para> 1885783Svbart@nginx.comUnit library (libunit) to streamline language module integration. 1886783Svbart@nginx.com</para> 1887783Svbart@nginx.com</change> 1888783Svbart@nginx.com 1889783Svbart@nginx.com<change type="feature"> 1890783Svbart@nginx.com<para> 1891783Svbart@nginx.com"408 Request Timeout" responses while closing HTTP keep-alive connections. 1892783Svbart@nginx.com</para> 1893783Svbart@nginx.com</change> 1894783Svbart@nginx.com 1895783Svbart@nginx.com<change type="feature"> 1896783Svbart@nginx.com<para> 1897783Svbart@nginx.comimprovements in OpenBSD support. 1898783Svbart@nginx.comThanks to David Carlier. 1899783Svbart@nginx.com</para> 1900783Svbart@nginx.com</change> 1901783Svbart@nginx.com 1902783Svbart@nginx.com<change type="bugfix"> 1903783Svbart@nginx.com<para> 1904783Svbart@nginx.coma segmentation fault might have occurred after reconfiguration. 1905783Svbart@nginx.com</para> 1906783Svbart@nginx.com</change> 1907783Svbart@nginx.com 1908783Svbart@nginx.com<change type="bugfix"> 1909783Svbart@nginx.com<para> 1910783Svbart@nginx.combuilding on systems with non-default locale might be broken. 1911783Svbart@nginx.com</para> 1912783Svbart@nginx.com</change> 1913783Svbart@nginx.com 1914783Svbart@nginx.com<change type="bugfix"> 1915783Svbart@nginx.com<para> 1916783Svbart@nginx.com"header_read_timeout" might not work properly. 1917783Svbart@nginx.com</para> 1918783Svbart@nginx.com</change> 1919783Svbart@nginx.com 1920783Svbart@nginx.com<change type="bugfix"> 1921783Svbart@nginx.com<para> 1922783Svbart@nginx.comheader fields values with non-ASCII bytes might be handled incorrectly 1923783Svbart@nginx.comin Python 3 module. 1924783Svbart@nginx.com</para> 1925783Svbart@nginx.com</change> 1926783Svbart@nginx.com 1927783Svbart@nginx.com</changes> 1928783Svbart@nginx.com 1929783Svbart@nginx.com 1930783Svbart@nginx.com<changes apply="unit-php 1931783Svbart@nginx.com unit-python unit-python2.7 1932783Svbart@nginx.com unit-python3.4 unit-python3.5 unit-python3.6 1933783Svbart@nginx.com unit-go unit-go1.7 unit-go1.8 unit-go1.9 unit-go1.10 1934783Svbart@nginx.com unit-perl 1935783Svbart@nginx.com unit-ruby" 1936727Svbart@nginx.com ver="1.3" rev="1" 1937727Svbart@nginx.com date="2018-07-13" time="18:00:00 +0300" 1938727Svbart@nginx.com packager="Konstantin Pavlov <thresh@nginx.com>"> 1939727Svbart@nginx.com 1940727Svbart@nginx.com<change> 1941727Svbart@nginx.com<para> 1942727Svbart@nginx.comNGINX Unit updated to 1.3. 1943727Svbart@nginx.com</para> 1944727Svbart@nginx.com</change> 1945727Svbart@nginx.com 1946727Svbart@nginx.com</changes> 1947727Svbart@nginx.com 1948727Svbart@nginx.com 1949727Svbart@nginx.com<changes apply="unit" ver="1.3" rev="1" 1950727Svbart@nginx.com date="2018-07-13" time="18:00:00 +0300" 1951727Svbart@nginx.com packager="Konstantin Pavlov <thresh@nginx.com>"> 1952727Svbart@nginx.com 1953727Svbart@nginx.com<change type="change"> 1954727Svbart@nginx.com<para> 1955727Svbart@nginx.comUTF-8 characters are now allowed in request header field values. 1956727Svbart@nginx.com</para> 1957727Svbart@nginx.com</change> 1958727Svbart@nginx.com 1959727Svbart@nginx.com<change type="feature"> 1960727Svbart@nginx.com<para> 1961727Svbart@nginx.comconfiguration of the request body size limit. 1962727Svbart@nginx.com</para> 1963727Svbart@nginx.com</change> 1964727Svbart@nginx.com 1965727Svbart@nginx.com<change type="feature"> 1966727Svbart@nginx.com<para> 1967727Svbart@nginx.comconfiguration of various HTTP connection timeouts. 1968727Svbart@nginx.com</para> 1969727Svbart@nginx.com</change> 1970727Svbart@nginx.com 1971727Svbart@nginx.com<change type="feature"> 1972727Svbart@nginx.com<para> 1973727Svbart@nginx.comRuby module now automatically uses Bundler where possible. 1974727Svbart@nginx.com</para> 1975727Svbart@nginx.com</change> 1976727Svbart@nginx.com 1977727Svbart@nginx.com<change type="feature"> 1978727Svbart@nginx.com<para> 1979727Svbart@nginx.comhttp.Flusher interface in Go module. 1980727Svbart@nginx.com</para> 1981727Svbart@nginx.com</change> 1982727Svbart@nginx.com 1983727Svbart@nginx.com<change type="bugfix"> 1984727Svbart@nginx.com<para> 1985727Svbart@nginx.comvarious issues in HTTP connection errors handling. 1986727Svbart@nginx.com</para> 1987727Svbart@nginx.com</change> 1988727Svbart@nginx.com 1989727Svbart@nginx.com<change type="bugfix"> 1990727Svbart@nginx.com<para> 1991727Svbart@nginx.comrequests with body data might be handled incorrectly in PHP module. 1992727Svbart@nginx.com</para> 1993727Svbart@nginx.com</change> 1994727Svbart@nginx.com 1995727Svbart@nginx.com<change type="bugfix"> 1996727Svbart@nginx.com<para> 1997727Svbart@nginx.comindividual PHP configuration options specified via control API were reset 1998727Svbart@nginx.comto previous values after the first request in application process. 1999727Svbart@nginx.com</para> 2000727Svbart@nginx.com</change> 2001727Svbart@nginx.com 2002727Svbart@nginx.com</changes> 2003727Svbart@nginx.com 2004727Svbart@nginx.com 2005727Svbart@nginx.com<changes apply="unit-php 2006727Svbart@nginx.com unit-python unit-python2.7 2007727Svbart@nginx.com unit-python3.4 unit-python3.5 unit-python3.6 2008727Svbart@nginx.com unit-go unit-go1.7 unit-go1.8 unit-go1.9 unit-go1.10 2009727Svbart@nginx.com unit-perl 2010727Svbart@nginx.com unit-ruby" 2011689Svbart@nginx.com ver="1.2" rev="1" 2012689Svbart@nginx.com date="2018-06-07" time="18:00:00 +0300" 2013689Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 2014689Svbart@nginx.com 2015689Svbart@nginx.com<change> 2016689Svbart@nginx.com<para> 2017689Svbart@nginx.comNGINX Unit updated to 1.2. 2018689Svbart@nginx.com</para> 2019689Svbart@nginx.com</change> 2020689Svbart@nginx.com 2021689Svbart@nginx.com</changes> 2022689Svbart@nginx.com 2023689Svbart@nginx.com 2024689Svbart@nginx.com<changes apply="unit" ver="1.2" rev="1" 2025689Svbart@nginx.com date="2018-06-07" time="18:00:00 +0300" 2026689Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 2027689Svbart@nginx.com 2028689Svbart@nginx.com<change type="feature"> 2029689Svbart@nginx.com<para> 2030689Svbart@nginx.comconfiguration of environment variables for application processes. 2031689Svbart@nginx.com</para> 2032689Svbart@nginx.com</change> 2033689Svbart@nginx.com 2034689Svbart@nginx.com<change type="feature"> 2035689Svbart@nginx.com<para> 2036689Svbart@nginx.comcustomization of php.ini path. 2037689Svbart@nginx.com</para> 2038689Svbart@nginx.com</change> 2039689Svbart@nginx.com 2040689Svbart@nginx.com<change type="feature"> 2041689Svbart@nginx.com<para> 2042689Svbart@nginx.comsetting of individual PHP configuration options. 2043689Svbart@nginx.com</para> 2044689Svbart@nginx.com</change> 2045689Svbart@nginx.com 2046689Svbart@nginx.com<change type="feature"> 2047689Svbart@nginx.com<para> 2048689Svbart@nginx.comconfiguration of execution arguments for Go applications. 2049689Svbart@nginx.com</para> 2050689Svbart@nginx.com</change> 2051689Svbart@nginx.com 2052689Svbart@nginx.com<change type="bugfix"> 2053689Svbart@nginx.com<para> 2054689Svbart@nginx.comkeep-alive connections might hang after reconfiguration. 2055689Svbart@nginx.com</para> 2056689Svbart@nginx.com</change> 2057689Svbart@nginx.com 2058689Svbart@nginx.com</changes> 2059689Svbart@nginx.com 2060689Svbart@nginx.com 2061672Sdefan@nginx.com<changes apply="unit-go1.10" ver="1.1" rev="1" 2062672Sdefan@nginx.com date="2018-05-14" time="18:00:00 +0300" 2063672Sdefan@nginx.com packager="Andrei Belov <defan@nginx.com>"> 2064672Sdefan@nginx.com 2065672Sdefan@nginx.com<change> 2066672Sdefan@nginx.com<para> 2067672Sdefan@nginx.comInitial release of Go 1.10 module for NGINX Unit. 2068672Sdefan@nginx.com</para> 2069672Sdefan@nginx.com</change> 2070672Sdefan@nginx.com 2071672Sdefan@nginx.com</changes> 2072672Sdefan@nginx.com 2073672Sdefan@nginx.com 2074548Sdefan@nginx.com<changes apply="unit-php 2075548Sdefan@nginx.com unit-python unit-python2.7 2076548Sdefan@nginx.com unit-python3.4 unit-python3.5 unit-python3.6 2077548Sdefan@nginx.com unit-go unit-go1.7 unit-go1.8 unit-go1.9 2078639Svbart@nginx.com unit-perl 2079639Svbart@nginx.com unit-ruby" 2080666Svbart@nginx.com ver="1.1" rev="1" 2081666Svbart@nginx.com date="2018-04-26" time="18:00:00 +0300" 2082666Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 2083666Svbart@nginx.com 2084666Svbart@nginx.com<change> 2085666Svbart@nginx.com<para> 2086666Svbart@nginx.comNGINX Unit updated to 1.1. 2087666Svbart@nginx.com</para> 2088666Svbart@nginx.com</change> 2089666Svbart@nginx.com 2090666Svbart@nginx.com</changes> 2091666Svbart@nginx.com 2092666Svbart@nginx.com 2093666Svbart@nginx.com<changes apply="unit" ver="1.1" rev="1" 2094666Svbart@nginx.com date="2018-04-26" time="18:00:00 +0300" 2095666Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 2096666Svbart@nginx.com 2097666Svbart@nginx.com<change type="bugfix"> 2098666Svbart@nginx.com<para> 2099666Svbart@nginx.comPython applications that use the write() callable did not work. 2100666Svbart@nginx.com</para> 2101666Svbart@nginx.com</change> 2102666Svbart@nginx.com 2103666Svbart@nginx.com<change type="bugfix"> 2104666Svbart@nginx.com<para> 2105666Svbart@nginx.comvirtual environments created with Python 3.3 or above might not have worked. 2106666Svbart@nginx.com</para> 2107666Svbart@nginx.com</change> 2108666Svbart@nginx.com 2109666Svbart@nginx.com<change type="bugfix"> 2110666Svbart@nginx.com<para> 2111666Svbart@nginx.comthe request.Read() function in Go applications did not produce EOF 2112666Svbart@nginx.comwhen the whole body was read. 2113666Svbart@nginx.com</para> 2114666Svbart@nginx.com</change> 2115666Svbart@nginx.com 2116666Svbart@nginx.com<change type="bugfix"> 2117666Svbart@nginx.com<para> 2118666Svbart@nginx.coma segmentation fault might have occurred while access log reopening. 2119666Svbart@nginx.com</para> 2120666Svbart@nginx.com</change> 2121666Svbart@nginx.com 2122666Svbart@nginx.com<change type="bugfix"> 2123666Svbart@nginx.com<para> 2124666Svbart@nginx.comin parsing of IPv6 control socket addresses. 2125666Svbart@nginx.com</para> 2126666Svbart@nginx.com</change> 2127666Svbart@nginx.com 2128666Svbart@nginx.com<change type="bugfix"> 2129666Svbart@nginx.com<para> 2130666Svbart@nginx.comloading of application modules was broken on OpenBSD. 2131666Svbart@nginx.com</para> 2132666Svbart@nginx.com</change> 2133666Svbart@nginx.com 2134666Svbart@nginx.com<change type="bugfix"> 2135666Svbart@nginx.com<para> 2136666Svbart@nginx.coma segmentation fault might have occurred when there were two modules 2137666Svbart@nginx.comwith the same type and version; the bug had appeared in 1.0. 2138666Svbart@nginx.com</para> 2139666Svbart@nginx.com</change> 2140666Svbart@nginx.com 2141666Svbart@nginx.com<change type="bugfix"> 2142666Svbart@nginx.com<para> 2143666Svbart@nginx.comalerts "freed pointer points to non-freeble page" might have appeared in log 2144666Svbart@nginx.comon 32-bit platforms. 2145666Svbart@nginx.com</para> 2146666Svbart@nginx.com</change> 2147666Svbart@nginx.com 2148666Svbart@nginx.com</changes> 2149666Svbart@nginx.com 2150666Svbart@nginx.com 2151666Svbart@nginx.com<changes apply="unit-php 2152666Svbart@nginx.com unit-python unit-python2.7 2153666Svbart@nginx.com unit-python3.4 unit-python3.5 unit-python3.6 2154666Svbart@nginx.com unit-go unit-go1.7 unit-go1.8 unit-go1.9 2155666Svbart@nginx.com unit-perl 2156666Svbart@nginx.com unit-ruby" 2157639Svbart@nginx.com ver="1.0" rev="1" 2158639Svbart@nginx.com date="2018-04-12" time="18:00:00 +0300" 2159639Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 2160639Svbart@nginx.com 2161639Svbart@nginx.com<change> 2162639Svbart@nginx.com<para> 2163639Svbart@nginx.comNGINX Unit updated to 1.0. 2164639Svbart@nginx.com</para> 2165639Svbart@nginx.com</change> 2166639Svbart@nginx.com 2167639Svbart@nginx.com</changes> 2168639Svbart@nginx.com 2169639Svbart@nginx.com 2170639Svbart@nginx.com<changes apply="unit" ver="1.0" rev="1" 2171639Svbart@nginx.com date="2018-04-12" time="18:00:00 +0300" 2172639Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 2173639Svbart@nginx.com 2174639Svbart@nginx.com<change type="change"> 2175639Svbart@nginx.com<para> 2176639Svbart@nginx.comconfiguration object moved into "/config/" path. 2177639Svbart@nginx.com</para> 2178639Svbart@nginx.com</change> 2179639Svbart@nginx.com 2180639Svbart@nginx.com<change type="feature"> 2181639Svbart@nginx.com<para> 2182639Svbart@nginx.combasic access logging. 2183639Svbart@nginx.com</para> 2184639Svbart@nginx.com</change> 2185639Svbart@nginx.com 2186639Svbart@nginx.com<change type="bugfix"> 2187639Svbart@nginx.com<para> 2188639Svbart@nginx.com503 error occurred if Go application did not write response header or body. 2189639Svbart@nginx.com</para> 2190639Svbart@nginx.com</change> 2191639Svbart@nginx.com 2192639Svbart@nginx.com<change type="bugfix"> 2193639Svbart@nginx.com<para> 2194663Svbart@nginx.comRuby applications that use encoding conversions might not have worked. 2195639Svbart@nginx.com</para> 2196639Svbart@nginx.com</change> 2197639Svbart@nginx.com 2198639Svbart@nginx.com<change type="bugfix"> 2199639Svbart@nginx.com<para> 2200639Svbart@nginx.comvarious stability issues. 2201639Svbart@nginx.com</para> 2202639Svbart@nginx.com</change> 2203639Svbart@nginx.com 2204639Svbart@nginx.com</changes> 2205639Svbart@nginx.com 2206639Svbart@nginx.com 2207639Svbart@nginx.com<changes apply="unit-php 2208639Svbart@nginx.com unit-python unit-python2.7 2209639Svbart@nginx.com unit-python3.4 unit-python3.5 unit-python3.6 2210639Svbart@nginx.com unit-go unit-go1.7 unit-go1.8 unit-go1.9 2211548Sdefan@nginx.com unit-perl" 2212586Svbart@nginx.com ver="0.7" rev="1" 2213586Svbart@nginx.com date="2018-03-22" time="18:00:00 +0300" 2214586Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 2215586Svbart@nginx.com 2216586Svbart@nginx.com<change> 2217586Svbart@nginx.com<para> 2218586Svbart@nginx.comNGINX Unit updated to 0.7. 2219586Svbart@nginx.com</para> 2220586Svbart@nginx.com</change> 2221586Svbart@nginx.com 2222586Svbart@nginx.com</changes> 2223586Svbart@nginx.com 2224586Svbart@nginx.com 2225600Sdefan@nginx.com<changes apply="unit-ruby" ver="0.7" rev="1" 2226600Sdefan@nginx.com date="2018-04-02" time="15:40:00 +0300" 2227600Sdefan@nginx.com packager="Andrei Belov <defan@nginx.com>"> 2228600Sdefan@nginx.com 2229600Sdefan@nginx.com<change> 2230600Sdefan@nginx.com<para> 2231600Sdefan@nginx.comInitial release of Ruby module for NGINX Unit. 2232600Sdefan@nginx.com</para> 2233600Sdefan@nginx.com</change> 2234600Sdefan@nginx.com 2235600Sdefan@nginx.com</changes> 2236600Sdefan@nginx.com 2237600Sdefan@nginx.com 2238586Svbart@nginx.com<changes apply="unit" ver="0.7" rev="1" 2239586Svbart@nginx.com date="2018-03-22" time="18:00:00 +0300" 2240586Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 2241586Svbart@nginx.com 2242586Svbart@nginx.com<change type="feature"> 2243586Svbart@nginx.com<para> 2244586Svbart@nginx.comRuby application module. 2245586Svbart@nginx.com</para> 2246586Svbart@nginx.com</change> 2247586Svbart@nginx.com 2248586Svbart@nginx.com<change type="bugfix"> 2249586Svbart@nginx.com<para> 2250586Svbart@nginx.comin discovering modules. 2251586Svbart@nginx.com</para> 2252586Svbart@nginx.com</change> 2253586Svbart@nginx.com 2254586Svbart@nginx.com<change type="bugfix"> 2255586Svbart@nginx.com<para> 2256586Svbart@nginx.comvarious race conditions on reconfiguration and during shutting down. 2257586Svbart@nginx.com</para> 2258586Svbart@nginx.com</change> 2259586Svbart@nginx.com 2260586Svbart@nginx.com<change type="bugfix"> 2261586Svbart@nginx.com<para> 2262586Svbart@nginx.comtabs and trailing spaces were not allowed in header fields values. 2263586Svbart@nginx.com</para> 2264586Svbart@nginx.com</change> 2265586Svbart@nginx.com 2266586Svbart@nginx.com<change type="bugfix"> 2267586Svbart@nginx.com<para> 2268586Svbart@nginx.coma segmentation fault occurred in Python module if start_response() was called 2269586Svbart@nginx.comoutside of WSGI callable. 2270586Svbart@nginx.com</para> 2271586Svbart@nginx.com</change> 2272586Svbart@nginx.com 2273586Svbart@nginx.com<change type="bugfix"> 2274586Svbart@nginx.com<para> 2275663Svbart@nginx.coma segmentation fault might have occurred in PHP module if there was an error 2276663Svbart@nginx.comwhile initialization. 2277586Svbart@nginx.com</para> 2278586Svbart@nginx.com</change> 2279586Svbart@nginx.com 2280586Svbart@nginx.com</changes> 2281586Svbart@nginx.com 2282586Svbart@nginx.com 2283586Svbart@nginx.com<changes apply="unit-php 2284586Svbart@nginx.com unit-python unit-python2.7 2285586Svbart@nginx.com unit-python3.4 unit-python3.5 unit-python3.6 2286586Svbart@nginx.com unit-go unit-go1.7 unit-go1.8 unit-go1.9 2287586Svbart@nginx.com unit-perl" 2288548Sdefan@nginx.com ver="0.6" rev="1" 2289539Svbart@nginx.com date="2018-02-09" time="18:00:00 +0300" 2290539Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 2291539Svbart@nginx.com 2292539Svbart@nginx.com<change> 2293539Svbart@nginx.com<para> 2294539Svbart@nginx.comNGINX Unit updated to 0.6. 2295539Svbart@nginx.com</para> 2296539Svbart@nginx.com</change> 2297539Svbart@nginx.com 2298539Svbart@nginx.com</changes> 2299539Svbart@nginx.com 2300539Svbart@nginx.com 2301539Svbart@nginx.com<changes apply="unit" ver="0.6" rev="1" 2302539Svbart@nginx.com date="2018-02-09" time="18:00:00 +0300" 2303539Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 2304539Svbart@nginx.com 2305539Svbart@nginx.com<change type="bugfix"> 2306539Svbart@nginx.com<para> 2307539Svbart@nginx.comthe main process died when the "type" application option contained version; 2308539Svbart@nginx.comthe bug had appeared in 0.5. 2309539Svbart@nginx.com</para> 2310539Svbart@nginx.com</change> 2311539Svbart@nginx.com 2312539Svbart@nginx.com</changes> 2313539Svbart@nginx.com 2314539Svbart@nginx.com 2315548Sdefan@nginx.com<changes apply="unit-php 2316548Sdefan@nginx.com unit-python unit-python2.7 2317548Sdefan@nginx.com unit-python3.4 unit-python3.5 unit-python3.6 2318548Sdefan@nginx.com unit-go unit-go1.7 unit-go1.8 unit-go1.9" 2319548Sdefan@nginx.com ver="0.5" rev="1" 2320531Svbart@nginx.com date="2018-02-08" time="18:00:00 +0300" 2321531Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 2322531Svbart@nginx.com 2323531Svbart@nginx.com<change> 2324531Svbart@nginx.com<para> 2325531Svbart@nginx.comNGINX Unit updated to 0.5. 2326531Svbart@nginx.com</para> 2327531Svbart@nginx.com</change> 2328531Svbart@nginx.com 2329531Svbart@nginx.com</changes> 2330531Svbart@nginx.com 2331531Svbart@nginx.com 2332524Sdefan@nginx.com<changes apply="unit-perl" ver="0.5" rev="1" 2333531Svbart@nginx.com date="2018-02-08" time="18:00:00 +0300" 2334524Sdefan@nginx.com packager="Andrei Belov <defan@nginx.com>"> 2335524Sdefan@nginx.com 2336524Sdefan@nginx.com<change> 2337524Sdefan@nginx.com<para> 2338524Sdefan@nginx.comInitial release of Perl module for NGINX Unit. 2339524Sdefan@nginx.com</para> 2340524Sdefan@nginx.com</change> 2341524Sdefan@nginx.com 2342524Sdefan@nginx.com</changes> 2343524Sdefan@nginx.com 2344524Sdefan@nginx.com 2345531Svbart@nginx.com<changes apply="unit" ver="0.5" rev="1" 2346531Svbart@nginx.com date="2018-02-08" time="18:00:00 +0300" 2347531Svbart@nginx.com packager="Andrei Belov <defan@nginx.com>"> 2348531Svbart@nginx.com 2349531Svbart@nginx.com<change type="change"> 2350531Svbart@nginx.com<para> 2351531Svbart@nginx.comthe "workers" application option was removed, the "processes" 2352531Svbart@nginx.comapplication option should be used instead. 2353531Svbart@nginx.com</para> 2354531Svbart@nginx.com</change> 2355531Svbart@nginx.com 2356531Svbart@nginx.com<change type="feature"> 2357531Svbart@nginx.com<para> 2358531Svbart@nginx.comthe "processes" application option with prefork and dynamic 2359531Svbart@nginx.comprocess management support. 2360531Svbart@nginx.com</para> 2361531Svbart@nginx.com</change> 2362531Svbart@nginx.com 2363531Svbart@nginx.com<change type="feature"> 2364531Svbart@nginx.com<para> 2365531Svbart@nginx.comPerl application module. 2366531Svbart@nginx.com</para> 2367531Svbart@nginx.com</change> 2368531Svbart@nginx.com 2369531Svbart@nginx.com<change type="bugfix"> 2370531Svbart@nginx.com<para> 2371531Svbart@nginx.comin reading client request body; the bug had appeared in 0.3. 2372531Svbart@nginx.com</para> 2373531Svbart@nginx.com</change> 2374531Svbart@nginx.com 2375531Svbart@nginx.com<change type="bugfix"> 2376531Svbart@nginx.com<para> 2377663Svbart@nginx.comsome Python applications might not have worked due to missing 2378531Svbart@nginx.com"wsgi.errors" environ variable. 2379531Svbart@nginx.com</para> 2380531Svbart@nginx.com</change> 2381531Svbart@nginx.com 2382531Svbart@nginx.com<change type="bugfix"> 2383531Svbart@nginx.com<para> 2384531Svbart@nginx.comHTTP chunked responses might be encoded incorrectly on 32-bit 2385531Svbart@nginx.complatforms. 2386531Svbart@nginx.com</para> 2387531Svbart@nginx.com</change> 2388531Svbart@nginx.com 2389531Svbart@nginx.com<change type="bugfix"> 2390531Svbart@nginx.com<para> 2391531Svbart@nginx.cominfinite looping in HTTP parser. 2392531Svbart@nginx.com</para> 2393531Svbart@nginx.com</change> 2394531Svbart@nginx.com 2395531Svbart@nginx.com<change type="bugfix"> 2396531Svbart@nginx.com<para> 2397531Svbart@nginx.comsegmentation fault in router. 2398531Svbart@nginx.com</para> 2399531Svbart@nginx.com</change> 2400531Svbart@nginx.com 2401531Svbart@nginx.com</changes> 2402531Svbart@nginx.com 2403531Svbart@nginx.com 2404548Sdefan@nginx.com<changes apply="unit-php 2405548Sdefan@nginx.com unit-python unit-python2.7 2406548Sdefan@nginx.com unit-python3.4 unit-python3.5 unit-python3.6 2407548Sdefan@nginx.com unit-go unit-go1.7 unit-go1.8 unit-go1.9" 2408548Sdefan@nginx.com ver="0.4" rev="1" 2409469Sigor@sysoev.ru date="2018-01-15" time="18:00:00 +0300" 2410469Sigor@sysoev.ru packager="Andrei Belov <defan@nginx.com>"> 2411469Sigor@sysoev.ru 2412469Sigor@sysoev.ru<change> 2413469Sigor@sysoev.ru<para> 2414469Sigor@sysoev.ruNGINX Unit updated to 0.4. 2415469Sigor@sysoev.ru</para> 2416469Sigor@sysoev.ru</change> 2417469Sigor@sysoev.ru 2418469Sigor@sysoev.ru</changes> 2419469Sigor@sysoev.ru 2420469Sigor@sysoev.ru 2421469Sigor@sysoev.ru<changes apply="unit" ver="0.4" rev="1" 2422469Sigor@sysoev.ru date="2018-01-15" time="18:00:00 +0300" 2423469Sigor@sysoev.ru packager="Andrei Belov <defan@nginx.com>"> 2424469Sigor@sysoev.ru 2425469Sigor@sysoev.ru<change type="feature"> 2426469Sigor@sysoev.ru<para> 2427469Sigor@sysoev.rucompatibility with DragonFly BSD. 2428469Sigor@sysoev.ru</para> 2429469Sigor@sysoev.ru</change> 2430469Sigor@sysoev.ru 2431469Sigor@sysoev.ru<change type="feature"> 2432469Sigor@sysoev.ru<para> 2433469Sigor@sysoev.ru"configure php --lib-static" option. 2434469Sigor@sysoev.ru</para> 2435469Sigor@sysoev.ru</change> 2436469Sigor@sysoev.ru 2437469Sigor@sysoev.ru<change type="bugfix"> 2438469Sigor@sysoev.ru<para> 2439469Sigor@sysoev.ruHTTP request body was not passed to application; 2440469Sigor@sysoev.ruthe bug had appeared in 0.3. 2441469Sigor@sysoev.ru</para> 2442469Sigor@sysoev.ru</change> 2443469Sigor@sysoev.ru 2444469Sigor@sysoev.ru<change type="bugfix"> 2445469Sigor@sysoev.ru<para> 2446469Sigor@sysoev.ruHTTP large header buffers allocation and deallocation fixed; 2447469Sigor@sysoev.ruthe bug had appeared in 0.3. 2448469Sigor@sysoev.ru</para> 2449469Sigor@sysoev.ru</change> 2450469Sigor@sysoev.ru 2451469Sigor@sysoev.ru<change type="bugfix"> 2452469Sigor@sysoev.ru<para> 2453663Svbart@nginx.comsome PHP applications might not have worked with relative "root" path. 2454469Sigor@sysoev.ru</para> 2455469Sigor@sysoev.ru</change> 2456469Sigor@sysoev.ru 2457469Sigor@sysoev.ru</changes> 2458469Sigor@sysoev.ru 2459469Sigor@sysoev.ru 2460441Sdefan@nginx.com<changes apply="unit-go1.9" ver="0.3" rev="1" 2461441Sdefan@nginx.com date="2017-12-28" time="18:00:00 +0300" 2462441Sdefan@nginx.com packager="Andrei Belov <defan@nginx.com>"> 2463441Sdefan@nginx.com 2464441Sdefan@nginx.com<change> 2465441Sdefan@nginx.com<para> 2466441Sdefan@nginx.comInitial release of Go 1.9 module for NGINX Unit. 2467441Sdefan@nginx.com</para> 2468441Sdefan@nginx.com</change> 2469441Sdefan@nginx.com 2470441Sdefan@nginx.com</changes> 2471441Sdefan@nginx.com 2472441Sdefan@nginx.com 2473441Sdefan@nginx.com<changes apply="unit-python3.6" ver="0.3" rev="1" 2474441Sdefan@nginx.com date="2017-12-28" time="18:00:00 +0300" 2475441Sdefan@nginx.com packager="Andrei Belov <defan@nginx.com>"> 2476441Sdefan@nginx.com 2477441Sdefan@nginx.com<change> 2478441Sdefan@nginx.com<para> 2479441Sdefan@nginx.comInitial release of Python 3.6 module for NGINX Unit. 2480441Sdefan@nginx.com</para> 2481441Sdefan@nginx.com</change> 2482441Sdefan@nginx.com 2483441Sdefan@nginx.com</changes> 2484441Sdefan@nginx.com 2485441Sdefan@nginx.com 2486548Sdefan@nginx.com<changes apply="unit-php 2487548Sdefan@nginx.com unit-python unit-python2.7 unit-python3.4 unit-python3.5 2488548Sdefan@nginx.com unit-go unit-go1.7 unit-go1.8" 2489548Sdefan@nginx.com ver="0.3" rev="1" 2490432Sigor@sysoev.ru date="2017-12-28" time="18:00:00 +0300" 2491432Sigor@sysoev.ru packager="Andrei Belov <defan@nginx.com>"> 2492432Sigor@sysoev.ru 2493432Sigor@sysoev.ru<change> 2494432Sigor@sysoev.ru<para> 2495432Sigor@sysoev.ruNGINX Unit updated to 0.3. 2496432Sigor@sysoev.ru</para> 2497432Sigor@sysoev.ru</change> 2498432Sigor@sysoev.ru 2499432Sigor@sysoev.ru</changes> 2500432Sigor@sysoev.ru 2501432Sigor@sysoev.ru 2502432Sigor@sysoev.ru<changes apply="unit" ver="0.3" rev="1" 2503432Sigor@sysoev.ru date="2017-12-28" time="18:00:00 +0300" 2504432Sigor@sysoev.ru packager="Andrei Belov <defan@nginx.com>"> 2505432Sigor@sysoev.ru 2506432Sigor@sysoev.ru<change type="change"> 2507432Sigor@sysoev.ru<para> 2508432Sigor@sysoev.ruthe Go package name changed to "nginx/unit". 2509432Sigor@sysoev.ru</para> 2510432Sigor@sysoev.ru</change> 2511432Sigor@sysoev.ru 2512432Sigor@sysoev.ru<change type="change"> 2513432Sigor@sysoev.ru<para> 2514432Sigor@sysoev.ruin the "limits.timeout" application option: application start time and 2515432Sigor@sysoev.rutime in queue now are not accounted. 2516432Sigor@sysoev.ru</para> 2517432Sigor@sysoev.ru</change> 2518432Sigor@sysoev.ru 2519432Sigor@sysoev.ru<change type="feature"> 2520432Sigor@sysoev.ru<para> 2521432Sigor@sysoev.ruthe "limits.requests" application option. 2522432Sigor@sysoev.ru</para> 2523432Sigor@sysoev.ru</change> 2524432Sigor@sysoev.ru 2525432Sigor@sysoev.ru<change type="feature"> 2526432Sigor@sysoev.ru<para> 2527432Sigor@sysoev.ruapplication request processing latency optimization. 2528432Sigor@sysoev.ru</para> 2529432Sigor@sysoev.ru</change> 2530432Sigor@sysoev.ru 2531432Sigor@sysoev.ru<change type="feature"> 2532432Sigor@sysoev.ru<para> 2533432Sigor@sysoev.ruHTTP keep-alive connections support. 2534432Sigor@sysoev.ru</para> 2535432Sigor@sysoev.ru</change> 2536432Sigor@sysoev.ru 2537432Sigor@sysoev.ru<change type="feature"> 2538432Sigor@sysoev.ru<para> 2539432Sigor@sysoev.ruthe "home" Python virtual environment configuration option. 2540432Sigor@sysoev.ru</para> 2541432Sigor@sysoev.ru</change> 2542432Sigor@sysoev.ru 2543432Sigor@sysoev.ru<change type="feature"> 2544432Sigor@sysoev.ru<para> 2545432Sigor@sysoev.ruPython atexit hook support. 2546432Sigor@sysoev.ru</para> 2547432Sigor@sysoev.ru</change> 2548432Sigor@sysoev.ru 2549432Sigor@sysoev.ru<change type="feature"> 2550432Sigor@sysoev.ru<para> 2551432Sigor@sysoev.ruvarious Go package improvements. 2552432Sigor@sysoev.ru</para> 2553432Sigor@sysoev.ru</change> 2554432Sigor@sysoev.ru 2555432Sigor@sysoev.ru<change type="bugfix"> 2556432Sigor@sysoev.ru<para> 2557432Sigor@sysoev.ruvarious crashes fixed. 2558432Sigor@sysoev.ru</para> 2559432Sigor@sysoev.ru</change> 2560432Sigor@sysoev.ru 2561432Sigor@sysoev.ru</changes> 2562432Sigor@sysoev.ru 2563432Sigor@sysoev.ru 2564372Sdefan@nginx.com<changes apply="unit-go" ver="0.2" rev="1" 2565372Sdefan@nginx.com date="2017-10-19" time="18:00:00 +0300" 2566372Sdefan@nginx.com packager="Andrei Belov <defan@nginx.com>"> 2567372Sdefan@nginx.com 2568372Sdefan@nginx.com<change> 2569372Sdefan@nginx.com<para> 2570372Sdefan@nginx.comInitial release of Go module for NGINX Unit. 2571372Sdefan@nginx.com</para> 2572372Sdefan@nginx.com</change> 2573372Sdefan@nginx.com 2574372Sdefan@nginx.com</changes> 2575372Sdefan@nginx.com 2576372Sdefan@nginx.com 2577373Sdefan@nginx.com<changes apply="unit-go1.7" ver="0.2" rev="1" 2578373Sdefan@nginx.com date="2017-10-19" time="18:00:00 +0300" 2579373Sdefan@nginx.com packager="Andrei Belov <defan@nginx.com>"> 2580373Sdefan@nginx.com 2581373Sdefan@nginx.com<change> 2582373Sdefan@nginx.com<para> 2583373Sdefan@nginx.comInitial release of Go 1.7 module for NGINX Unit. 2584373Sdefan@nginx.com</para> 2585373Sdefan@nginx.com</change> 2586373Sdefan@nginx.com 2587373Sdefan@nginx.com</changes> 2588373Sdefan@nginx.com 2589373Sdefan@nginx.com 2590373Sdefan@nginx.com<changes apply="unit-go1.8" ver="0.2" rev="1" 2591373Sdefan@nginx.com date="2017-10-19" time="18:00:00 +0300" 2592373Sdefan@nginx.com packager="Andrei Belov <defan@nginx.com>"> 2593373Sdefan@nginx.com 2594373Sdefan@nginx.com<change> 2595373Sdefan@nginx.com<para> 2596373Sdefan@nginx.comInitial release of Go 1.8 module for NGINX Unit. 2597373Sdefan@nginx.com</para> 2598373Sdefan@nginx.com</change> 2599373Sdefan@nginx.com 2600373Sdefan@nginx.com</changes> 2601373Sdefan@nginx.com 2602373Sdefan@nginx.com 2603372Sdefan@nginx.com<changes apply="unit-python" ver="0.2" rev="1" 2604372Sdefan@nginx.com date="2017-10-19" time="18:00:00 +0300" 2605372Sdefan@nginx.com packager="Andrei Belov <defan@nginx.com>"> 2606372Sdefan@nginx.com 2607372Sdefan@nginx.com<change> 2608372Sdefan@nginx.com<para> 2609372Sdefan@nginx.comInitial release of Python module for NGINX Unit. 2610372Sdefan@nginx.com</para> 2611372Sdefan@nginx.com</change> 2612372Sdefan@nginx.com 2613372Sdefan@nginx.com</changes> 2614372Sdefan@nginx.com 2615372Sdefan@nginx.com 2616373Sdefan@nginx.com<changes apply="unit-python2.7" ver="0.2" rev="1" 2617373Sdefan@nginx.com date="2017-10-19" time="18:00:00 +0300" 2618373Sdefan@nginx.com packager="Andrei Belov <defan@nginx.com>"> 2619373Sdefan@nginx.com 2620373Sdefan@nginx.com<change> 2621373Sdefan@nginx.com<para> 2622373Sdefan@nginx.comInitial release of Python 2.7 module for NGINX Unit. 2623373Sdefan@nginx.com</para> 2624373Sdefan@nginx.com</change> 2625373Sdefan@nginx.com 2626373Sdefan@nginx.com</changes> 2627373Sdefan@nginx.com 2628373Sdefan@nginx.com 2629373Sdefan@nginx.com<changes apply="unit-python3.4" ver="0.2" rev="1" 2630373Sdefan@nginx.com date="2017-10-19" time="18:00:00 +0300" 2631373Sdefan@nginx.com packager="Andrei Belov <defan@nginx.com>"> 2632373Sdefan@nginx.com 2633373Sdefan@nginx.com<change> 2634373Sdefan@nginx.com<para> 2635373Sdefan@nginx.comInitial release of Python 3.4 module for NGINX Unit. 2636373Sdefan@nginx.com</para> 2637373Sdefan@nginx.com</change> 2638373Sdefan@nginx.com 2639373Sdefan@nginx.com</changes> 2640373Sdefan@nginx.com 2641373Sdefan@nginx.com 2642373Sdefan@nginx.com<changes apply="unit-python3.5" ver="0.2" rev="1" 2643373Sdefan@nginx.com date="2017-10-19" time="18:00:00 +0300" 2644373Sdefan@nginx.com packager="Andrei Belov <defan@nginx.com>"> 2645373Sdefan@nginx.com 2646373Sdefan@nginx.com<change> 2647373Sdefan@nginx.com<para> 2648373Sdefan@nginx.comInitial release of Python 3.5 module for NGINX Unit. 2649373Sdefan@nginx.com</para> 2650373Sdefan@nginx.com</change> 2651373Sdefan@nginx.com 2652373Sdefan@nginx.com</changes> 2653373Sdefan@nginx.com 2654373Sdefan@nginx.com 2655372Sdefan@nginx.com<changes apply="unit-php" ver="0.2" rev="1" 2656372Sdefan@nginx.com date="2017-10-19" time="18:00:00 +0300" 2657372Sdefan@nginx.com packager="Andrei Belov <defan@nginx.com>"> 2658372Sdefan@nginx.com 2659372Sdefan@nginx.com<change> 2660372Sdefan@nginx.com<para> 2661372Sdefan@nginx.comInitial release of PHP module for NGINX Unit. 2662372Sdefan@nginx.com</para> 2663372Sdefan@nginx.com</change> 2664372Sdefan@nginx.com 2665372Sdefan@nginx.com</changes> 2666372Sdefan@nginx.com 2667372Sdefan@nginx.com 2668370Sigor@sysoev.ru<changes apply="unit" ver="0.2" rev="1" 2669370Sigor@sysoev.ru date="2017-10-19" time="18:00:00 +0300" 2670370Sigor@sysoev.ru packager="Andrei Belov <defan@nginx.com>"> 2671370Sigor@sysoev.ru 2672370Sigor@sysoev.ru<change type="feature"> 2673370Sigor@sysoev.ru<para> 2674370Sigor@sysoev.ruconfiguration persistence. 2675370Sigor@sysoev.ru</para> 2676370Sigor@sysoev.ru</change> 2677370Sigor@sysoev.ru 2678370Sigor@sysoev.ru<change type="feature"> 2679370Sigor@sysoev.ru<para> 2680370Sigor@sysoev.ruimproved handling of configuration errors. 2681370Sigor@sysoev.ru</para> 2682370Sigor@sysoev.ru</change> 2683370Sigor@sysoev.ru 2684370Sigor@sysoev.ru<change type="feature"> 2685370Sigor@sysoev.ru<para> 2686370Sigor@sysoev.ruapplication "timeout" property. 2687370Sigor@sysoev.ru</para> 2688370Sigor@sysoev.ru</change> 2689370Sigor@sysoev.ru 2690370Sigor@sysoev.ru<change type="bugfix"> 2691370Sigor@sysoev.ru<para> 2692370Sigor@sysoev.ruPOST request for PHP were handled incorrectly. 2693370Sigor@sysoev.ru</para> 2694370Sigor@sysoev.ru</change> 2695370Sigor@sysoev.ru 2696370Sigor@sysoev.ru<change type="bugfix"> 2697370Sigor@sysoev.ru<para> 2698370Sigor@sysoev.ruthe router exited abnormally if all listeners had been deleted. 2699370Sigor@sysoev.ru</para> 2700370Sigor@sysoev.ru</change> 2701370Sigor@sysoev.ru 2702370Sigor@sysoev.ru<change type="bugfix"> 2703370Sigor@sysoev.ru<para> 2704370Sigor@sysoev.ruthe router crashed under load. 2705370Sigor@sysoev.ru</para> 2706370Sigor@sysoev.ru</change> 2707370Sigor@sysoev.ru 2708370Sigor@sysoev.ru<change type="bugfix"> 2709370Sigor@sysoev.ru<para> 2710370Sigor@sysoev.rumemory leak in the router. 2711370Sigor@sysoev.ru</para> 2712370Sigor@sysoev.ru</change> 2713370Sigor@sysoev.ru 2714370Sigor@sysoev.ru</changes> 2715370Sigor@sysoev.ru 2716370Sigor@sysoev.ru 2717369Sdefan@nginx.com<changes apply="unit" ver="0.1" rev="1" 2718369Sdefan@nginx.com date="2017-09-06" time="19:14:28 +0300" 2719369Sdefan@nginx.com packager="Andrei Belov <defan@nginx.com>"> 2720369Sdefan@nginx.com 2721369Sdefan@nginx.com<change> 2722369Sdefan@nginx.com<para> 2723369Sdefan@nginx.comFirst public release. 2724369Sdefan@nginx.com</para> 2725369Sdefan@nginx.com</change> 2726369Sdefan@nginx.com 2727369Sdefan@nginx.com</changes> 2728369Sdefan@nginx.com 2729369Sdefan@nginx.com 2730369Sdefan@nginx.com</change_log> 2731