<feed xmlns='http://www.w3.org/2005/Atom'>
<title>unit.git/src, branch 1.20.0</title>
<subtitle>Universal Web Application Server</subtitle>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/unit.git/'/>
<entry>
<title>PHP: compatibility with 8.0.0 RC1.</title>
<updated>2020-10-06T15:12:05+00:00</updated>
<author>
<name>Valentin Bartenev</name>
<email>vbart@nginx.com</email>
</author>
<published>2020-10-06T15:12:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/unit.git/commit/?id=2821b3347c026ae171228146c5ccd0bd7408358f'/>
<id>2821b3347c026ae171228146c5ccd0bd7408358f</id>
<content type='text'>
This closes #474 PR on GitHub.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This closes #474 PR on GitHub.
</pre>
</div>
</content>
</entry>
<entry>
<title>Router: fixed "not empty" pattern matching.</title>
<updated>2020-10-07T17:06:30+00:00</updated>
<author>
<name>Valentin Bartenev</name>
<email>vbart@nginx.com</email>
</author>
<published>2020-10-07T17:06:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/unit.git/commit/?id=3f513f434fbe44810ea2352d4ffc7d4d702b3e12'/>
<id>3f513f434fbe44810ea2352d4ffc7d4d702b3e12</id>
<content type='text'>
The "!" pattern should be opposite to "", i.e. match only non-empty values.
But after 3c00af54b937 it was equal to "!*", which is wrong.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The "!" pattern should be opposite to "", i.e. match only non-empty values.
But after 3c00af54b937 it was equal to "!*", which is wrong.
</pre>
</div>
</content>
</entry>
<entry>
<title>Removing a meaningless warning message.</title>
<updated>2020-10-06T16:06:33+00:00</updated>
<author>
<name>Max Romanov</name>
<email>max.romanov@nginx.com</email>
</author>
<published>2020-10-06T16:06:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/unit.git/commit/?id=703d79042b8dd161e7c53d485b90af2b926148e6'/>
<id>703d79042b8dd161e7c53d485b90af2b926148e6</id>
<content type='text'>
Data in the queue and the socket are transmitted independently; special
READ_QUEUE and READ_SOCKET message types are used for synchronization.

The warning was accidentally committed with changeset 1d84b9e4b459.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Data in the queue and the socket are transmitted independently; special
READ_QUEUE and READ_SOCKET message types are used for synchronization.

The warning was accidentally committed with changeset 1d84b9e4b459.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fixed comment.</title>
<updated>2020-10-02T12:16:09+00:00</updated>
<author>
<name>Igor Sysoev</name>
<email>igor@sysoev.ru</email>
</author>
<published>2020-10-02T12:16:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/unit.git/commit/?id=9d8d2c17585c149601855a09eba575640d156eae'/>
<id>9d8d2c17585c149601855a09eba575640d156eae</id>
<content type='text'>
Thanks to 洪志道 (Hong Zhi Dao).
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Thanks to 洪志道 (Hong Zhi Dao).
</pre>
</div>
</content>
</entry>
<entry>
<title>Python: ASGI server introduced.</title>
<updated>2020-10-01T20:55:23+00:00</updated>
<author>
<name>Max Romanov</name>
<email>max.romanov@nginx.com</email>
</author>
<published>2020-10-01T20:55:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/unit.git/commit/?id=c4c2f90c5b532c1ec283d211e0fd50e4538c2a51'/>
<id>c4c2f90c5b532c1ec283d211e0fd50e4538c2a51</id>
<content type='text'>
This closes #461 issue on GitHub.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This closes #461 issue on GitHub.
</pre>
</div>
</content>
</entry>
<entry>
<title>Publishing libunit's malloc() and free() wrappers for apps.</title>
<updated>2020-10-01T20:55:10+00:00</updated>
<author>
<name>Max Romanov</name>
<email>max.romanov@nginx.com</email>
</author>
<published>2020-10-01T20:55:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/unit.git/commit/?id=bbc6d2470afe8bfc8a97427b0b576080466bd31a'/>
<id>bbc6d2470afe8bfc8a97427b0b576080466bd31a</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>PHP: fixed "rootfs" isolation dependency on system mounts.</title>
<updated>2020-09-09T18:28:44+00:00</updated>
<author>
<name>Tiago Natel de Moura</name>
<email>t.nateldemoura@f5.com</email>
</author>
<published>2020-09-09T18:28:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/unit.git/commit/?id=c2eb245b32870b6360079ff9a4b063a7cd84d585'/>
<id>c2eb245b32870b6360079ff9a4b063a7cd84d585</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Fixing router connection pool leakage.</title>
<updated>2020-09-30T13:36:57+00:00</updated>
<author>
<name>Max Romanov</name>
<email>max.romanov@nginx.com</email>
</author>
<published>2020-09-30T13:36:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/unit.git/commit/?id=c5cb2432c473a00a8af69b8930b268552afce85b'/>
<id>c5cb2432c473a00a8af69b8930b268552afce85b</id>
<content type='text'>
The connection's local socket address is allocated from the connection
pool before the request is passed to the application; however, with keep-alive
connections, this field was unconditionally reset by a socket configuration
value that could be NULL.  For the next request, the address was allocated
again from the same connection pool.  Nonetheless, all leaked addresses
were released when the connection was closed.

The issue introduced in changeset 5c7dd85fabd5.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The connection's local socket address is allocated from the connection
pool before the request is passed to the application; however, with keep-alive
connections, this field was unconditionally reset by a socket configuration
value that could be NULL.  For the next request, the address was allocated
again from the same connection pool.  Nonetheless, all leaked addresses
were released when the connection was closed.

The issue introduced in changeset 5c7dd85fabd5.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fixing leakage caused by incorrect in_hash flag cleanup.</title>
<updated>2020-09-29T22:17:09+00:00</updated>
<author>
<name>Max Romanov</name>
<email>max.romanov@nginx.com</email>
</author>
<published>2020-09-29T22:17:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/unit.git/commit/?id=153e8a87792ecc5dee12ba1f261fe1340a800a90'/>
<id>153e8a87792ecc5dee12ba1f261fe1340a800a90</id>
<content type='text'>
Large-bodied requests are added to the request hash to be found when the body
arrives.  However, changeset 1d84b9e4b459 introduced a bug: the 'in_hash' flag,
used to remove the request from the hash at request release, was cleared after
the first successful request lookup.  As a result, the entry was never removed.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Large-bodied requests are added to the request hash to be found when the body
arrives.  However, changeset 1d84b9e4b459 introduced a bug: the 'in_hash' flag,
used to remove the request from the hash at request release, was cleared after
the first successful request lookup.  As a result, the entry was never removed.
</pre>
</div>
</content>
</entry>
<entry>
<title>MIME: added AVIF and APNG image formats.</title>
<updated>2020-09-29T20:23:32+00:00</updated>
<author>
<name>Valentin Bartenev</name>
<email>vbart@nginx.com</email>
</author>
<published>2020-09-29T20:23:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/unit.git/commit/?id=67d33fac66d37327ce038e1538d07f353afe87e8'/>
<id>67d33fac66d37327ce038e1538d07f353afe87e8</id>
<content type='text'>
AVIF is a modern image format based on the AV1 video codec.  It generally has
better compression than other widely used formats (WebP, JPEG, PNG, and GIF)
and is designed to supersede them.  Support was already added to the latest
version of Chrome.

APNG extends PNG to permit animated images that work similarly to animated GIF.
It's supported by most modern browsers.

Also removed duplicated ".svg" entry.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
AVIF is a modern image format based on the AV1 video codec.  It generally has
better compression than other widely used formats (WebP, JPEG, PNG, and GIF)
and is designed to supersede them.  Support was already added to the latest
version of Chrome.

APNG extends PNG to permit animated images that work similarly to animated GIF.
It's supported by most modern browsers.

Also removed duplicated ".svg" entry.
</pre>
</div>
</content>
</entry>
</feed>
