1<?xml version="1.0" encoding="ISO-8859-1"?>
2<package packagerversion="1.10.13" version="2.0" xmlns="http://pear.php.net/dtd/package-2.0" xmlns:tasks="http://pear.php.net/dtd/tasks-1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://pear.php.net/dtd/tasks-1.0 http://pear.php.net/dtd/tasks-1.0.xsd http://pear.php.net/dtd/package-2.0 http://pear.php.net/dtd/package-2.0.xsd">
3 <name>event</name>
4 <channel>pecl.php.net</channel>
5 <summary>Provides interface to libevent library</summary>
6 <description>This is an extension to efficiently schedule I/O, time and signal based
7  events using the best I/O notification mechanism available for specific platform.
8  This is a port of libevent to the PHP infrastructure.
9
10  Version 1.0.0 introduces:
11  * new OO API breaking backwards compatibility
12  * support of libevent 2+ including HTTP, DNS, OpenSSL and the event listener.
13
14  Note, event-1.0.0 and greater is not compatible with previous versions.</description>
15 <lead>
16  <name>Ruslan Osmanov</name>
17  <user>osmanov</user>
18  <email>osmanov@php.net</email>
19  <active>yes</active>
20 </lead>
21 <developer>
22  <name>Anatol Belski</name>
23  <user>ab</user>
24  <email>ab@php.net</email>
25  <active>yes</active>
26 </developer>
27 <contributor>
28  <name>Remi Collet</name>
29  <user>remi</user>
30  <email>remi@php.net</email>
31  <active>yes</active>
32 </contributor>
33 <date>2021-09-23</date>
34 <time>08:59:31</time>
35 <version>
36  <release>3.0.6</release>
37  <api>3.0.3</api>
38 </version>
39 <stability>
40  <release>stable</release>
41  <api>stable</api>
42 </stability>
43 <license uri="http://www.php.net/license">PHP</license>
44 <notes>
45Fixed tests for the builds in debug mode where libevent complained about STDIN and STDOUT being not set to non-blocking mode
46Fixed build with OpenSSL 3.0 (Thanks to Remi Collet).
47 </notes>
48 <contents>
49  <dir name="/">
50   <file md5sum="4c9c86cb3a5d1c00b82d6808dafe9934" name="php5/classes/base.c" role="src" />
51   <file md5sum="37f68cff861c9a4403bccc2f174b49ae" name="php5/classes/buffer.c" role="src" />
52   <file md5sum="70930106d40e9836aacf0b2096fe2f93" name="php5/classes/buffer_event.c" role="src" />
53   <file md5sum="172fd0f026bebc77af1624dc8df1789a" name="php5/classes/dns.c" role="src" />
54   <file md5sum="54f46d84486edcffd184bea5273b1113" name="php5/classes/event.c" role="src" />
55   <file md5sum="1b5246e0511b541b7aa13a83670b10ad" name="php5/classes/event_config.c" role="src" />
56   <file md5sum="b4ae153093970d2a34d4ab6d70ee0c6f" name="php5/classes/event_util.c" role="src" />
57   <file md5sum="0ac6d144287f9270de701c1f4a132d8e" name="php5/classes/http.c" role="src" />
58   <file md5sum="42bf411c49e794b4bed78fae2758edfa" name="php5/classes/http.h" role="src" />
59   <file md5sum="b35241b23e591f14447e37fc6d16f210" name="php5/classes/http_connection.c" role="src" />
60   <file md5sum="1d9b1f3c94c0b1afd74381c9f52afd90" name="php5/classes/http_request.c" role="src" />
61   <file md5sum="51dbeee52b846d1842f50be0e452eb88" name="php5/classes/listener.c" role="src" />
62   <file md5sum="a48bfd3596c5f109601db8cb7675a21a" name="php5/classes/ssl_context.h" role="src" />
63   <file md5sum="96c445d9559c7e4357b6fcff4fa5c8cb" name="php5/classes/ssl_context.c" role="src" />
64   <file md5sum="ed916803a0af32d3503a75a92c6ec3db" name="php5/src/common.h" role="src" />
65   <file md5sum="14e17b7270676e356867efb36052c6c8" name="php5/src/fe.c" role="src" />
66   <file md5sum="bb5e12a139cdcb344590bfe3a5472f7d" name="php5/src/fe.h" role="src" />
67   <file md5sum="f03aca137b8a8f56038968357170cca2" name="php5/src/pe.c" role="src" />
68   <file md5sum="77d457362fe1a482a61176a65b2d30db" name="php5/src/priv.h" role="src" />
69   <file md5sum="ce40494ec6201a32411ccc4d6d7483bb" name="php5/src/structs.h" role="src" />
70   <file md5sum="31c07b712fd7aa8ece539e9bb10acc74" name="php5/src/util.c" role="src" />
71   <file md5sum="1cf6d2f6416de6e7311c82ab8b5572a0" name="php5/src/util.h" role="src" />
72   <file md5sum="ac02b427ab7f3bb6657fedee1b0eec18" name="php5/php_event.c" role="src" />
73   <file md5sum="3dcef876bca1b253405531e4b92d11ae" name="php5/php_event.h" role="src" />
74   <file md5sum="6bb823a9686cd95f65385d99e6ec6387" name="php7/classes/base.c" role="src" />
75   <file md5sum="8f23de0420cf95861a1529a8b9df3077" name="php7/classes/buffer.c" role="src" />
76   <file md5sum="6e749e7310502166fabcc69c4f0c29ef" name="php7/classes/buffer_event.c" role="src" />
77   <file md5sum="62faf8e277c829bbb0ad3b7a7395deba" name="php7/classes/dns.c" role="src" />
78   <file md5sum="e05f5892ccbd9dc9ed24b79a16f77df9" name="php7/classes/event.c" role="src" />
79   <file md5sum="8c7074426ed48d955d4bd4ba9b78ed08" name="php7/classes/event_config.c" role="src" />
80   <file md5sum="89e62b6df9d7a3913e210f6114c24e97" name="php7/classes/event_util.c" role="src" />
81   <file md5sum="d53922b8acb847d76570491c82f81623" name="php7/classes/http.c" role="src" />
82   <file md5sum="64ce39c403024fef0a57fc0199f887e8" name="php7/classes/http.h" role="src" />
83   <file md5sum="9f804f76921b0acdaf137c0339022e97" name="php7/classes/http_connection.c" role="src" />
84   <file md5sum="766b16832636eef715c437c902a5f622" name="php7/classes/http_request.c" role="src" />
85   <file md5sum="f6604210d0861b5cab68c945dbe3bcc9" name="php7/classes/listener.c" role="src" />
86   <file md5sum="7154ac4c23d5194ec9c1d396a98086a3" name="php7/classes/ssl_context.h" role="src" />
87   <file md5sum="f2136ae4a401ece73305a180ca281fcb" name="php7/classes/ssl_context.c" role="src" />
88   <file md5sum="debb4d8ef53d80aa7544a116914b91ff" name="php7/src/common.h" role="src" />
89   <file md5sum="37e0e6b28626a2a18ef61f4e1af2cd08" name="php7/src/fe.c" role="src" />
90   <file md5sum="8bf37a3044071aff43b7f9ab883c2b78" name="php7/src/fe.h" role="src" />
91   <file md5sum="6c61025e7c43d47ef98e134e0d875be8" name="php7/src/pe.c" role="src" />
92   <file md5sum="ea812bfd1937958fd93bdad7fd4977d0" name="php7/src/priv.h" role="src" />
93   <file md5sum="4d285c805de55333e940807355acd2a5" name="php7/src/structs.h" role="src" />
94   <file md5sum="e0d77e1a6fc922d56917dc8499807b9e" name="php7/src/util.c" role="src" />
95   <file md5sum="214196e1502a1f53bf30ac0531874c3d" name="php7/src/util.h" role="src" />
96   <file md5sum="135f4ad4adef837299f8fb2a4f3dbd53" name="php7/php_event.c" role="src" />
97   <file md5sum="bd528c60ec9ed978b59fe2ef46622b80" name="php7/php_event.h" role="src" />
98   <file md5sum="65de6a1b04bd8f5771ef8a4f3966b7ba" name="php8/src/common.h" role="src" />
99   <file md5sum="0161deb38a12fe3e18a58ac2d95534d8" name="php8/src/fe.c" role="src" />
100   <file md5sum="6c61025e7c43d47ef98e134e0d875be8" name="php8/src/pe.c" role="src" />
101   <file md5sum="8ea34c51da03b2234132b244c9bb546a" name="php8/src/priv.h" role="src" />
102   <file md5sum="4d285c805de55333e940807355acd2a5" name="php8/src/structs.h" role="src" />
103   <file md5sum="65cd30a76c3e092821dae29b2c5961ef" name="php8/src/util.c" role="src" />
104   <file md5sum="15dc1dfc77e3acf540f7ad4c3b52eef2" name="php8/src/util.h" role="src" />
105   <file md5sum="aeb4008491c7e3de093e57e2f96835f9" name="php8/classes/base.c" role="src" />
106   <file md5sum="46c96fb749f68506ed75b5c4fee42fcf" name="php8/classes/buffer.c" role="src" />
107   <file md5sum="32c03457ea6c02b5bee87e89ad092161" name="php8/classes/buffer_event.c" role="src" />
108   <file md5sum="e51ebf57b53d988ec5ac7a2b8f1fa06c" name="php8/classes/dns.c" role="src" />
109   <file md5sum="f1551d1554375137ec571fa45dea35a6" name="php8/classes/event.c" role="src" />
110   <file md5sum="b38cf6413b03c335e5de18608ba7ac98" name="php8/classes/event_config.c" role="src" />
111   <file md5sum="f9877358ab8583ef3ea7cabf4015f263" name="php8/classes/event_util.c" role="src" />
112   <file md5sum="44b8a508d30ea9a445d337c8fed54fb8" name="php8/classes/http.c" role="src" />
113   <file md5sum="64ce39c403024fef0a57fc0199f887e8" name="php8/classes/http.h" role="src" />
114   <file md5sum="68d5d64dc1210cbcd5f27d433d8c8f88" name="php8/classes/http_connection.c" role="src" />
115   <file md5sum="3c678fe23580038dd240e9edeae93d58" name="php8/classes/http_request.c" role="src" />
116   <file md5sum="d4f37ff74359f1fff6264a014771b0a0" name="php8/classes/listener.c" role="src" />
117   <file md5sum="a7c936e33a6369027026bca65c3f0efc" name="php8/classes/ssl_context.c" role="src" />
118   <file md5sum="7154ac4c23d5194ec9c1d396a98086a3" name="php8/classes/ssl_context.h" role="src" />
119   <file md5sum="2055a29ac2f3f470828a663786352c87" name="php8/php_event.c" role="src" />
120   <file md5sum="bd528c60ec9ed978b59fe2ef46622b80" name="php8/php_event.h" role="src" />
121   <file md5sum="b50f518806e5b4ece8f67b1d7526826f" name="php8/arginfo.h" role="src" />
122   <file md5sum="49dce18461f7e6916e8da976d1537f78" name="php8/php_event_arginfo.h" role="src" />
123   <file md5sum="7caeb064f6ccd672a1fdb57243757e9e" name="php8/php_event.stub.php.in" role="src" />
124   <file md5sum="79909a9fe09676375b7890cf98801587" name="examples/ssl-echo-server/server.php" role="doc" />
125   <file md5sum="a435ef897853e95d98eeeed1174c6972" name="examples/ssl-echo-server/client.php" role="doc" />
126   <file md5sum="b520d8a3880aeb7c5087b478a4a7e8b7" name="examples/buffer_proxy.php" role="doc" />
127   <file md5sum="e4c1e151fe9c4538abe37b9c89ae6208" name="examples/eio.php" role="doc" />
128   <file md5sum="19447737e3359eebb4ad069974a70420" name="examples/fibonacci_buffer.php" role="doc" />
129   <file md5sum="18e35fa593fe45b1e7a0175403f3f52b" name="examples/http.php" role="doc" />
130   <file md5sum="8633ab8d69021bbbb409ea4fb8c6305e" name="examples/http_accept.php" role="doc" />
131   <file md5sum="b48d2aac980ca9dadfd2c2b26836fa0e" name="examples/http_alias.php" role="doc" />
132   <file md5sum="b1b12a51cfd6a08e57139aa2fdd2baee" name="examples/http_bind.php" role="doc" />
133   <file md5sum="ab3ea54cc84562bc85bbce584c38ba9b" name="examples/http_closecb.php" role="doc" />
134   <file md5sum="49ee512cef5ccd31f4c9f5ee0eec4f47" name="examples/http_request.php" role="doc" />
135   <file md5sum="606a387e7fceb4e4032bca1f7ea0e50b" name="examples/httpv0client.php" role="doc" />
136   <file md5sum="aa03d89c32c57f2620d9dcd9cef485e0" name="examples/httpv0client2.php" role="doc" />
137   <file md5sum="2e1201889826e9a64658d83671b3d80b" name="examples/https.php" role="doc" />
138   <file md5sum="00567210e63aec6e7bdd202905c6cc37" name="examples/listener.php" role="doc" />
139   <file md5sum="00571702944b382cdf947b75fd13c37d" name="examples/misc.php" role="doc" />
140   <file md5sum="64de83aea3d0bc48fa3aac7e804f18b5" name="examples/signal.php" role="doc" />
141   <file md5sum="9c1154f9fcd429355e28530a5ca4fcc8" name="examples/sslfilter.php" role="doc" />
142   <file md5sum="0f36ed84ae1aa72da2fff32f93d4b1e0" name="examples/ssl-connection.php" role="doc" />
143   <file md5sum="62e8a329dd46d27fbceef03db8c831a2" name="examples/timer.php" role="doc" />
144   <file md5sum="097555adaa59f1cf9beba6b2f3539c8a" name="examples/uppercase_proxy.php" role="doc" />
145   <file md5sum="55908c601e52fbd6757972830518768f" name="tests/01-load.phpt" role="test" />
146   <file md5sum="9b4b08b5e6237a32c45be0aa7605ac54" name="tests/02-features.phpt" role="test" />
147   <file md5sum="915ac2a011c21d600da874c3e78d8928" name="tests/03-event-del.phpt" role="test" />
148   <file md5sum="4f5b1f60f1db59c2a3ed0a925df5d787" name="tests/04-bevent-socket.phpt" role="test" />
149   <file md5sum="6ab76ba7ba874f55330ba0e798539c2f" name="tests/05-buffer-pos.phpt" role="test" />
150   <file md5sum="2250f5bfa3d6469fb9e4759cd0d8b40c" name="tests/06-timer.phpt" role="test" />
151   <file md5sum="0964321c5c4d330fbbeb2c43564d3312" name="tests/07-listener-error-win32.phpt" role="test" />
152   <file md5sum="dbdd4d65d1bc733bba31edfa186b75ec" name="tests/07-listener-error.phpt" role="test" />
153   <file md5sum="31e021fb84b0c3591afeb582dcb316cb" name="tests/08-buffer.phpt" role="test" />
154   <file md5sum="a38f40860a87536866e338d87c7552f0" name="tests/09-gc-cycles.phpt" role="test" />
155   <file md5sum="3057481ce377a56e924228c940b33a93" name="tests/10-event-data-dtor.phpt" role="test" />
156   <file md5sum="1b64a5d3da12b03726734714e8315830" name="tests/11-gc-cycles.phpt" role="test" />
157   <file md5sum="57875d1bb7f82b79af80aa9bb5384799" name="tests/12-serialization.phpt" role="test" />
158   <file md5sum="305fd03b8d9dcae4af90f3c320a9b264" name="tests/13-bevent-pair.phpt" role="test" />
159   <file md5sum="ea8f68eaa8ad85dd0acc0d0d06b20ce2" name="tests/14-php5-httpconn-error.phpt" role="test" />
160   <file md5sum="8a0988169bf6bcd44d404dbda223a9e5" name="tests/15-php5-dnsbase-error.phpt" role="test" />
161   <file md5sum="0c3f845111509bdbaaa5063ceed21ee3" name="tests/16-php5-http-error.phpt" role="test" />
162   <file md5sum="8cdfdf028495e9f64b9ad1f6b4e63da6" name="tests/17-event-settimer-error.phpt" role="test" />
163   <file md5sum="f63808af66a2e275cea3efe6f89e4e50" name="tests/18-timer-error.phpt" role="test" />
164   <file md5sum="bf12cc2c06f7b8e24d14a2b65aab6144" name="tests/19-event-signal-error.phpt" role="test" />
165   <file md5sum="69f125bd9547b9cf6b37661438f1c686" name="tests/20-bevent-error.phpt" role="test" />
166   <file md5sum="0150bddebaee317373bdbf044408c21f" name="tests/21-bevent-sslfilter.phpt" role="test" />
167   <file md5sum="b79be9f1dd8c44d074660a570c2d08ae" name="tests/21-bevent-sslsocket.phpt" role="test" />
168   <file md5sum="ea83cd7970307f2707272770aa5f21b0" name="tests/22-php5-bevent-pair-error.phpt" role="test" />
169   <file md5sum="b5a323e0c00dbce164b07a7af04326b2" name="tests/23-php5-listener-error.phpt" role="test" />
170   <file md5sum="b46dfce25d46f9d1b7b4af7aa3f508e6" name="tests/24-php5-bevent-sslfilter-error.phpt" role="test" />
171   <file md5sum="abb944d7f5a4e0cf83c56bb01961a786" name="tests/25-php5-bevent-sslsocket-error.phpt" role="test" />
172   <file md5sum="c8858137cc9bb26790a10ac3a48057c0" name="tests/26-http-debug-info.phpt" role="test" />
173   <file md5sum="90e43088ae154f9ff3585ddc57b674c4" name="tests/27-event-util-create-socket.phpt" role="test" />
174   <file md5sum="1af0164792d3ab8a5502b10de912898d" name="tests/27-event-util-create-socket_php8.phpt" role="test" />
175   <file md5sum="12d82cb69baa81cc21b2da39901324ee" name="tests/28-bevent-ssl.phpt" role="test" />
176   <file md5sum="d513c41499bfbe837589cca8e058a3d0" name="tests/28-bevent-ssl1.1.0.phpt" role="test" />
177   <file md5sum="ec8d3bdcd51a08141e13ccfb61b01c55" name="tests/29-buffer-pullup.phpt" role="test" />
178   <file md5sum="de43b20d4afd378d5fd00e4bd6ac07c4" name="tests/30-listener-free.phpt" role="test" />
179   <file md5sum="3a997e8c2e9fb4312f0412d8851e2aba" name="tests/49-issue.phpt" role="test" />
180   <file md5sum="8e3108ac79af82e914f65436be71b25b" name="tests/54-event-config-set-flags.phpt" role="test" />
181   <file md5sum="3b9a90bda74bda04210b6df6c39010cd" name="tests/61-issue.phpt" role="test" />
182   <file md5sum="6b88069440828c69ec79b12d2b18013d" name="CREDITS" role="doc" />
183   <file md5sum="c9452b7b4c9308c73d8c3bc39f43561e" name="INSTALL.md" role="doc" />
184   <file md5sum="b602636d46a61c0ac0432bbf5c078fe4" name="LICENSE" role="doc" />
185   <file md5sum="dd64cb9cce12901fba4afa86f8cc189a" name="README.md" role="doc" />
186   <file md5sum="6c21265fd0e20272be536e0e2a384894" name="config.m4" role="src" />
187   <file md5sum="786215e2d14107e6e778cbd60efc23cd" name="config.w32" role="src" />
188  </dir>
189 </contents>
190 <dependencies>
191  <required>
192   <php>
193    <min>5.4.0</min>
194   </php>
195   <pearinstaller>
196    <min>1.4.0a1</min>
197   </pearinstaller>
198  </required>
199 </dependencies>
200 <providesextension>event</providesextension>
201 <extsrcrelease>
202  <configureoption default="no" name="enable-event-debug" prompt="Enable internal debugging in Event" />
203  <configureoption default="yes" name="enable-event-sockets" prompt="Enable sockets support in Event" />
204  <configureoption default="/usr" name="with-event-libevent-dir" prompt="libevent installation prefix" />
205  <configureoption default="no" name="with-event-pthreads" prompt="Include libevent&apos;s pthreads library and enable thread safety support in Event" />
206  <configureoption default="yes" name="with-event-extra" prompt="Include libevent protocol-specific functionality support including HTTP, DNS, and RPC" />
207  <configureoption default="yes" name="with-event-openssl" prompt="Include libevent OpenSSL support" />
208  <configureoption default="no" name="with-event-ns" prompt="PHP Namespace for all Event classes" />
209  <configureoption default="no" name="with-openssl-dir" prompt="openssl installation prefix" />
210 </extsrcrelease>
211 <changelog>
212  <release>
213   <version>
214    <release>3.0.6</release>
215    <api>3.0.3</api>
216   </version>
217   <stability>
218    <release>stable</release>
219    <api>stable</api>
220   </stability>
221   <license uri="http://www.php.net/license">PHP</license>
222   <notes>
223Fixed tests for the builds in debug mode where libevent complained about STDIN and STDOUT being not set to non-blocking mode
224Fixed build with OpenSSL 3.0 (Thanks to Remi Collet).
225   </notes>
226  </release>
227  <release>
228   <version>
229    <release>3.0.5</release>
230    <api>3.0.3</api>
231   </version>
232   <stability>
233    <release>stable</release>
234    <api>stable</api>
235   </stability>
236   <license uri="http://www.php.net/license">PHP</license>
237   <notes>
238Fixed a test not working with PHP 8.1.0alpha1
239   </notes>
240  </release>
241  <release>
242   <version>
243    <release>3.0.4</release>
244    <api>3.0.3</api>
245   </version>
246   <stability>
247    <release>stable</release>
248    <api>stable</api>
249   </stability>
250   <license uri="http://www.php.net/license">PHP</license>
251   <notes>
252Internal changes: Created a non-fastcall wrapper for zend_objects_new().
253   </notes>
254  </release>
255  <release>
256   <version>
257    <release>3.0.3</release>
258    <api>3.0.3</api>
259   </version>
260   <stability>
261    <release>stable</release>
262    <api>stable</api>
263   </stability>
264   <license uri="http://www.php.net/license">PHP</license>
265   <notes>
266Fixed #66: Segmentation fault when calling EventConfig::avoidMethod because of incorrect arg info
267   </notes>
268  </release>
269  <release>
270   <version>
271    <release>3.0.2r1</release>
272    <api>3.0.2r1</api>
273   </version>
274   <stability>
275    <release>stable</release>
276    <api>stable</api>
277   </stability>
278   <license uri="http://www.php.net/license">PHP</license>
279   <notes>
280Stable version release.
281   </notes>
282  </release>
283  <release>
284   <version>
285    <release>3.0.2</release>
286    <api>3.0.2</api>
287   </version>
288   <stability>
289    <release>beta</release>
290    <api>beta</api>
291   </stability>
292   <license uri="http://www.php.net/license">PHP</license>
293   <notes>
294- Fixed #65: some methods had wrong argument/return type hints
295   </notes>
296  </release>
297  <release>
298   <version>
299    <release>3.0.1</release>
300    <api>3.0.0</api>
301   </version>
302   <stability>
303    <release>beta</release>
304    <api>beta</api>
305   </stability>
306   <license uri="http://www.php.net/license">PHP</license>
307   <notes>
308- Fixed #64: build failed to find arginfo.h when invoked via pecl install event-beta
309   </notes>
310  </release>
311  <release>
312   <version>
313    <release>3.0.0</release>
314    <api>3.0.0</api>
315   </version>
316   <stability>
317    <release>beta</release>
318    <api>beta</api>
319   </stability>
320   <license uri="http://www.php.net/license">PHP</license>
321   <notes>
322- Added PHP8 support.
323- Introduced strict type hinting.
324- Removed deprecated EventBufferEvent::sslFilter method.
325   </notes>
326  </release>
327  <release>
328   <version>
329    <release>2.5.7</release>
330    <api>2.5.0</api>
331   </version>
332   <stability>
333    <release>stable</release>
334    <api>stable</api>
335   </stability>
336   <license uri="http://www.php.net/license">PHP</license>
337   <notes>
338Issue #61: fixed segfault that appeared after throwing exception from event handler in PHP 7.4.9+
339   </notes>
340  </release>
341  <release>
342   <version>
343    <release>2.5.6</release>
344    <api>2.5.0</api>
345   </version>
346   <stability>
347    <release>stable</release>
348    <api>stable</api>
349   </stability>
350   <license uri="http://www.php.net/license">PHP</license>
351   <notes>
352Fixed a bug where numeric file descriptor was fetched from stdio stream incorrectly (issue #60)
353   </notes>
354  </release>
355  <release>
356   <version>
357    <release>2.5.5</release>
358    <api>2.5.0</api>
359   </version>
360   <stability>
361    <release>stable</release>
362    <api>stable</api>
363   </stability>
364   <license uri="http://www.php.net/license">PHP</license>
365   <notes>
366Issue #60: fixed a segfault which appeared when Event::add was called on malformed or freed Event object
367   </notes>
368  </release>
369  <release>
370   <version>
371    <release>2.5.4</release>
372    <api>2.5.0</api>
373   </version>
374   <stability>
375    <release>stable</release>
376    <api>stable</api>
377   </stability>
378   <license uri="http://www.php.net/license">PHP</license>
379   <notes>
380Fixed #59: PHP7 build errors with disabled SSL support
381Fixed build error with disabled sockets support
382   </notes>
383  </release>
384  <release>
385   <version>
386    <release>2.5.3</release>
387    <api>2.5.0</api>
388   </version>
389   <stability>
390    <release>stable</release>
391    <api>stable</api>
392   </stability>
393   <license uri="http://www.php.net/license">PHP</license>
394   <notes>
395Fixed #56: a warning occurred randomly when PHP stream cast via php_stream_cast() without the PHP_STREAM_CAST_INTERNAL flag.
396Fixed build warnings with PHP 7.4.0-alpha1: &apos;incompatible pointer type&apos; warnings occurred in assignments to the write property handlers (thanks to Remi Collet).
397   </notes>
398  </release>
399  <release>
400   <version>
401    <release>2.5.2</release>
402    <api>2.5.0</api>
403   </version>
404   <stability>
405    <release>stable</release>
406    <api>stable</api>
407   </stability>
408   <license uri="http://www.php.net/license">PHP</license>
409   <notes>
410Fixed the value of EINPROGRESS constant in WIN32
411   </notes>
412  </release>
413  <release>
414   <version>
415    <release>2.5.1</release>
416    <api>2.5.0</api>
417   </version>
418   <stability>
419    <release>stable</release>
420    <api>stable</api>
421   </stability>
422   <license uri="http://www.php.net/license">PHP</license>
423   <notes>
424Fixed build warnings with PHP 7.3
425   </notes>
426  </release>
427  <release>
428   <version>
429    <release>2.5.0</release>
430    <api>2.5.0</api>
431   </version>
432   <stability>
433    <release>stable</release>
434    <api>stable</api>
435   </stability>
436   <license uri="http://www.php.net/license">PHP</license>
437   <notes>
438Issue #54: Added EventConfig::setFlags() method. (There was no way to set EVENT_BASE_FLAG_* flags.)
439   </notes>
440  </release>
441  <release>
442   <version>
443    <release>2.4.3</release>
444    <api>2.4.1</api>
445   </version>
446   <stability>
447    <release>stable</release>
448    <api>stable</api>
449   </stability>
450   <license uri="http://www.php.net/license">PHP</license>
451   <notes>
452Fixed issue #53: EventBase::__construct now throws EventException if the features specified via the EventConfig parameter are not supported on the current platform.
453   </notes>
454  </release>
455  <release>
456   <version>
457    <release>2.4.2</release>
458    <api>2.4.0</api>
459   </version>
460   <stability>
461    <release>stable</release>
462    <api>stable</api>
463   </stability>
464   <license uri="http://www.php.net/license">PHP</license>
465   <notes>
466Fixed: SSL verification callback failed when EventSslContext was used with either EventBufferEvent::createSslFilter or EventBufferEvent::sslFilter.
467   </notes>
468  </release>
469  <release>
470   <version>
471    <release>2.4.1</release>
472    <api>2.4.0</api>
473   </version>
474   <stability>
475    <release>stable</release>
476    <api>stable</api>
477   </stability>
478   <license uri="http://www.php.net/license">PHP</license>
479   <notes>
480Fixed issue #52: namespace issues when installing via pecl command in non-interactive mode.
481   </notes>
482  </release>
483  <release>
484   <version>
485    <release>2.4.0</release>
486    <api>2.4.0</api>
487   </version>
488   <stability>
489    <release>stable</release>
490    <api>stable</api>
491   </stability>
492   <license uri="http://www.php.net/license">PHP</license>
493   <notes>
494Replaced obsolete AC_TRY_COMPILE with AC_COMPILE_IFELSE in config.m4
495   </notes>
496  </release>
497  <release>
498   <version>
499    <release>2.4.0RC3</release>
500    <api>2.4.0RC3</api>
501   </version>
502   <stability>
503    <release>beta</release>
504    <api>beta</api>
505   </stability>
506   <license uri="http://www.php.net/license">PHP</license>
507   <notes>
508Fixed test error on RHEL 6/7 (thanks to Remi Collet).
509   </notes>
510  </release>
511  <release>
512   <version>
513    <release>2.4.0RC2</release>
514    <api>2.4.0RC2</api>
515   </version>
516   <stability>
517    <release>beta</release>
518    <api>beta</api>
519   </stability>
520   <license uri="http://www.php.net/license">PHP</license>
521   <notes>
522Fixed tests/12-serialization.phpt (thanks to Remi Collet)
523Fixed issue #49: &quot;Invalid file descriptor&quot; exceptions in PHP 7.2. Due to
524  Zend API changes in PHP 7.2, Event stream arguments were accepted by
525  reference.
526   </notes>
527  </release>
528  <release>
529   <version>
530    <release>2.4.0RC1</release>
531    <api>2.4.0RC1</api>
532   </version>
533   <stability>
534    <release>beta</release>
535    <api>beta</api>
536   </stability>
537   <license uri="http://www.php.net/license">PHP</license>
538   <notes>
539Issue #46: Class name conflict with Laravel and Lumen.
540  Added --with-event-ns configuration option.
541   </notes>
542  </release>
543  <release>
544   <version>
545    <release>2.3.1</release>
546    <api>2.3.1</api>
547   </version>
548   <stability>
549    <release>stable</release>
550    <api>stable</api>
551   </stability>
552   <license uri="http://www.php.net/license">PHP</license>
553   <notes>
554Fixed issue #40: Segmentation fault when trying to serialize instance of EventHttpRequest
555
556EventException will be thrown when the user tries to serialize or unserialize an instance of
557  EventBase, EventHttp, EventHttpRequest, EventHttpConnection, or EventConfig.
558
559Fixed issue #44: EventUtil class was final abstract
560   </notes>
561  </release>
562  <release>
563   <version>
564    <release>2.3.0</release>
565    <api>2.3.0</api>
566   </version>
567   <stability>
568    <release>beta</release>
569    <api>beta</api>
570   </stability>
571   <license uri="http://www.php.net/license">PHP</license>
572   <notes>
573Fixed build errors with LibreSSL
574   </notes>
575  </release>
576  <release>
577   <version>
578    <release>2.3.0RC1</release>
579    <api>2.3.0RC1</api>
580   </version>
581   <stability>
582    <release>beta</release>
583    <api>beta</api>
584   </stability>
585   <license uri="http://www.php.net/license">PHP</license>
586   <notes>
587Add: EventSslContext methods: setMinProtoVersion and setMaxProtoVersion for OpenSSL &gt;= 1.1.0.
588Add: EventSslContext constants: OPENSSL_VERSION_NUMBER and OPENSSL_VERSION_TEXT.
589Fix: compilation warnings regarding OpenSSL features deprecated in version 1.0.0 and newer.
590Deprecated: EventSslContext protocol version options are deprecated for OpenSSL &gt;= 1.1.0.
591  Use the new setMinProtoVersion and setMaxProtoVersion methods instead.
592Fix: build failed with custom openssl setup (non-standard --with-openssl-dir)
593   </notes>
594  </release>
595  <release>
596   <version>
597    <release>2.2.1</release>
598    <api>2.2.0</api>
599   </version>
600   <stability>
601    <release>stable</release>
602    <api>stable</api>
603   </stability>
604   <license uri="http://www.php.net/license">PHP</license>
605   <notes>
606Fix: issue #31 where numeric file descriptor caused segmentation fault
607   </notes>
608  </release>
609  <release>
610   <version>
611    <release>2.2.0</release>
612    <api>2.2.0</api>
613   </version>
614   <stability>
615    <release>stable</release>
616    <api>stable</api>
617   </stability>
618   <license uri="http://www.php.net/license">PHP</license>
619   <notes>
620Add: EventUtil::createSocket method(PHP5)
621Add: EventListener::free method
622Fix: issue #30 where building without SSL3 failed
623Fix: the class property names were wrapped in double quotes
624   </notes>
625  </release>
626  <release>
627   <version>
628    <release>2.1.0</release>
629    <api>2.1.0</api>
630   </version>
631   <stability>
632    <release>stable</release>
633    <api>stable</api>
634   </stability>
635   <license uri="http://www.php.net/license">PHP</license>
636   <notes>
637Add: EventUtil::SOCK_RAW constant
638Add: EventSslContext option constants: OPT_REQUIRE_CLIENT_CERT and OPT_VERIFY_CLIENT_ONCE
639Fix: EventBufferEvent::createPair caused segmentation fault in PHP7
640SSL Fixes:
641- chained self-signed certificate failed to pass with EventSslContext::OPT_ALLOW_SELF_SIGNED = TRUE
642- the server didn&apos;t set the list of CAs to be sent to the client when requesting a client certificate for underlying SSL structure
643- EventSslContext::OPT_ALLOW_SELF_SIGNED = TRUE accepted any self-signed certificate without regard to OPT_CA_FILE/OPT_CA_PATH
644Fix: PHP 7.1.0alpha1 build errors
645   </notes>
646  </release>
647  <release>
648   <version>
649    <release>2.0.4</release>
650    <api>2.0.0</api>
651   </version>
652   <stability>
653    <release>stable</release>
654    <api>stable</api>
655   </stability>
656   <license uri="http://www.php.net/license">PHP</license>
657   <notes>
658Issue #28: event-2.0.3 Windows build fails
659   </notes>
660  </release>
661  <release>
662   <version>
663    <release>2.0.3</release>
664    <api>2.0.0</api>
665   </version>
666   <stability>
667    <release>stable</release>
668    <api>stable</api>
669   </stability>
670   <license uri="http://www.php.net/license">PHP</license>
671   <notes>
672Issue #27: PHP &gt; 7.0.6RC1 build fails
673   </notes>
674  </release>
675  <release>
676   <version>
677    <release>2.0.2</release>
678    <api>2.0.0</api>
679   </version>
680   <stability>
681    <release>stable</release>
682    <api>stable</api>
683   </stability>
684   <license uri="http://www.php.net/license">PHP</license>
685   <notes>
686PHP7: fixed random EDOM errors in EventUtil::setSocketOption
687   </notes>
688  </release>
689  <release>
690   <version>
691    <release>2.0.1</release>
692    <api>2.0.0</api>
693   </version>
694   <stability>
695    <release>stable</release>
696    <api>stable</api>
697   </stability>
698   <license uri="http://www.php.net/license">PHP</license>
699   <notes>
700PHP7: Protected user callbacks from destruction within libevent callbacks
701   </notes>
702  </release>
703  <release>
704   <version>
705    <release>2.0.0</release>
706    <api>2.0.0</api>
707   </version>
708   <stability>
709    <release>stable</release>
710    <api>stable</api>
711   </stability>
712   <license uri="http://www.php.net/license">PHP</license>
713   <notes>
714Fixed some memory issues in PHP7
715- SSL leaks
716- Possibility of implicit destruction of user vars
717- Unclean SSL bufferevent shutdown
718- EventBufferEvent::free() within a callback damaged zvals bound to corresponding bufferevent thereby causing SEGFAULT
719
720Fixed PHP5/PHP7 memory issue: string returned by EventBuffer::pullup() was not zero-terminated
721   </notes>
722  </release>
723  <release>
724   <version>
725    <release>2.0.0RC2</release>
726    <api>2.0.0</api>
727   </version>
728   <stability>
729    <release>beta</release>
730    <api>stable</api>
731   </stability>
732   <license uri="http://www.php.net/license">PHP</license>
733   <notes>
734Fixed Mac OS X build errors
735   </notes>
736  </release>
737  <release>
738   <version>
739    <release>2.0.0RC1</release>
740    <api>2.0.0</api>
741   </version>
742   <stability>
743    <release>beta</release>
744    <api>stable</api>
745   </stability>
746   <license uri="http://www.php.net/license">PHP</license>
747   <notes>
748PHP7 support added.
749
750Fixes:
751  - issue #23: memory leak in EventHttpConnection close callback + memory leaks in HTTP callbacks.
752  - Libevent &apos;unrecoverable&apos; fatal errors(fixed by stopping the loop in EventBase free-storage handler).
753
754API changes:
755  - EventUtil::createSocket method added(PHP7)
756  - removed the first(EventBase) argument of EventBufferEvent::sslFilter method, since the internal EventBase object must match EventBase object within the underlying EventBufferEvent
757   </notes>
758  </release>
759  <release>
760   <version>
761    <release>1.11.3</release>
762    <api>1.10.0</api>
763   </version>
764   <stability>
765    <release>stable</release>
766    <api>stable</api>
767   </stability>
768   <license uri="http://www.php.net/license">PHP</license>
769   <notes>
770Issue #20: SSL_GET_PREV_SESSION:session id context uninitialized
771   </notes>
772  </release>
773  <release>
774   <version>
775    <release>1.11.2</release>
776    <api>1.10.0</api>
777   </version>
778   <stability>
779    <release>stable</release>
780    <api>stable</api>
781   </stability>
782   <license uri="http://www.php.net/license">PHP</license>
783   <notes>
784Issue #6: memory leaks in EventHttp callbacks
785EventBufferEvent object returned by EventHttpRequest::getBufferEvent() should be freed explicitly,
786if the method is called from a userspace callback.
787   </notes>
788  </release>
789  <release>
790   <version>
791    <release>1.11.1</release>
792    <api>1.10.0</api>
793   </version>
794   <stability>
795    <release>stable</release>
796    <api>stable</api>
797   </stability>
798   <license uri="http://www.php.net/license">PHP</license>
799   <notes>
800Fixed build with old openssl (RHEL-5) (thanks to Remi Collet)
801   </notes>
802  </release>
803  <release>
804   <version>
805    <release>1.11.0</release>
806    <api>1.10.0</api>
807   </version>
808   <stability>
809    <release>stable</release>
810    <api>stable</api>
811   </stability>
812   <license uri="http://www.php.net/license">PHP</license>
813   <notes>
814Fix: exceptions thrown from EventHttp and EventBufferEvent userspace callbacks were not passed through back to user.
815Now the event loop will break and re-throw the exception.
816Add: EventBase::free method
817Add: EventBufferEvent methods:
818  - close
819  - sslGetCipherInfo
820  - sslGetCipherName
821  - sslGetCipherVersion
822  - sslGetProtocol
823Add: EventSslContext options:
824  - OPT_NO_SSLv2
825  - OPT_NO_SSLv3
826  - OPT_NO_TLSv1
827  - OPT_NO_TLSv1_1
828  - OPT_NO_TLSv1_2
829  - OPT_CIPHER_SERVER_PREFERENCE
830  - TLSv11_CLIENT_METHOD
831  - TLSv11_SERVER_METHOD
832  - TLSv12_CLIENT_METHOD
833  - TLSv12_SERVER_METHOD
834(Thanks to Mathieu CARBONNEAUX @ bitbucket.org)
835Issue #13: EventBufferEvent::__construct failed to accept a persistent
836socket client(STREAM_CLIENT_PERSISTENT)
837   </notes>
838  </release>
839  <release>
840   <version>
841    <release>1.10.4</release>
842    <api>1.9.0</api>
843   </version>
844   <stability>
845    <release>stable</release>
846    <api>stable</api>
847   </stability>
848   <license uri="http://www.php.net/license">PHP</license>
849   <notes>
850Fix: exceptions thrown from EventHttp and EventBufferEvent userspace callbacks were not passed through back to user.
851Now the event loop will break and re-throw the exception.
852   </notes>
853  </release>
854  <release>
855   <version>
856    <release>1.10.3</release>
857    <api>1.9.0</api>
858   </version>
859   <stability>
860    <release>stable</release>
861    <api>stable</api>
862   </stability>
863   <license uri="http://www.php.net/license">PHP</license>
864   <notes>
865Issue #8: pecl install failed due to the REST API issues with Unicode
866   </notes>
867  </release>
868  <release>
869   <version>
870    <release>1.10.2</release>
871    <api>1.9.0</api>
872   </version>
873   <stability>
874    <release>stable</release>
875    <api>stable</api>
876   </stability>
877   <license uri="http://www.php.net/license">PHP</license>
878   <notes>
879Fix: EventBufferEvent::read() accepted negative values
880Fix: TSRM context was not set in EventHttp::__construct (J. Fekete)
881Fix: refcounter in EventHttp&apos;s default callback (J. Fekete)
882   </notes>
883  </release>
884  <release>
885   <version>
886    <release>1.10.1</release>
887    <api>1.9.0</api>
888   </version>
889   <stability>
890    <release>stable</release>
891    <api>stable</api>
892   </stability>
893   <license uri="http://www.php.net/license">PHP</license>
894   <notes>
895Deleted a troublesome phpt test
896   </notes>
897  </release>
898  <release>
899   <version>
900    <release>1.10.0</release>
901    <api>1.9.0</api>
902   </version>
903   <stability>
904    <release>stable</release>
905    <api>stable</api>
906   </stability>
907   <license uri="http://www.php.net/license">PHP</license>
908   <notes>
909Issue #3: Segmentation fault on EventHttpRequest-&gt;free() (Bitbucket&apos;s tracker).
910Add: EventHttpConnection::__construct() now optionally accepts EventSslContext argument (Issue #5).
911Add: EventHttp::__construct() now accepts EventSslContext object as argument.
912   </notes>
913  </release>
914  <release>
915   <version>
916    <release>1.9.1</release>
917    <api>1.8.0</api>
918   </version>
919   <stability>
920    <release>stable</release>
921    <api>stable</api>
922   </stability>
923   <license uri="http://www.php.net/license">PHP</license>
924   <notes>
925Fix: return value of EventBase::reInit() was inverted
926issue #7: PHP_EVENT_REQUIRE_BASE_BY_REF() didn&apos;t work in 5.6.0-dev (fixed by Remi Collet)
927   </notes>
928  </release>
929  <release>
930   <version>
931    <release>1.9.0</release>
932    <api>1.8.0</api>
933   </version>
934   <stability>
935    <release>stable</release>
936    <api>stable</api>
937   </stability>
938   <license uri="http://www.php.net/license">PHP</license>
939   <notes>
940Windows support introduced(thanks to Anatol Belski &lt;ab@php.net&gt;)
941
942LIBEVENT_VERSION is now reported in phpinfo(Remi &lt;remi@php.net&gt;)
943
944 Forced passing EventBase argument by reference. A method accepting EventBase
945 will generate fatal error in case if corresponding argument is not passed by
946 reference.
947
948 EventBufferEvent::createPair method made static.
949   </notes>
950  </release>
951  <release>
952   <version>
953    <release>1.8.1</release>
954    <api>1.8.0</api>
955   </version>
956   <stability>
957    <release>stable</release>
958    <api>stable</api>
959   </stability>
960   <license uri="http://www.php.net/license">PHP</license>
961   <notes>
962Fix: Bug #65847 Issue with old libevent2 where evhttp_connection_get_bufferevent function was not available with libevent version &lt; 2.0.17 (thanks to Remi &lt;remi@php.net&gt;)
963   </notes>
964  </release>
965  <release>
966   <version>
967    <release>1.8.0</release>
968    <api>1.8.0</api>
969   </version>
970   <stability>
971    <release>stable</release>
972    <api>stable</api>
973   </stability>
974   <license uri="http://www.php.net/license">PHP</license>
975   <notes>
976Add: EventHttpRequest methods: getBufferEvent, getConnection, closeConnection(thanks to rickysu at Bitbucket)
977Add: EventHttpConnection::setCloseCallback method
978   </notes>
979  </release>
980  <release>
981   <version>
982    <release>1.7.8</release>
983    <api>1.7.0</api>
984   </version>
985   <stability>
986    <release>stable</release>
987    <api>stable</api>
988   </stability>
989   <license uri="http://www.php.net/license">PHP</license>
990   <notes>
991Fix: build error on Solaris
992Introduced negative dependencies: libevent extension, windows OS
993   </notes>
994  </release>
995  <release>
996   <version>
997    <release>1.7.7</release>
998    <api>1.7.0</api>
999   </version>
1000   <stability>
1001    <release>stable</release>
1002    <api>stable</api>
1003   </stability>
1004   <license uri="http://www.php.net/license">PHP</license>
1005   <notes>
1006Fix: incorrect handling of sockets extension dependency
1007(a hack for distros installing sockets separately)
1008   </notes>
1009  </release>
1010  <release>
1011   <version>
1012    <release>1.7.6</release>
1013    <api>1.7.0</api>
1014   </version>
1015   <stability>
1016    <release>stable</release>
1017    <api>stable</api>
1018   </stability>
1019   <license uri="http://www.php.net/license">PHP</license>
1020   <notes>
1021Change: sockets extension is now required(see bug #65597). The user can still
1022turn off this requirement off explicitly with --disable-event-sockets configure
1023option
1024   </notes>
1025  </release>
1026  <release>
1027   <version>
1028    <release>1.7.5</release>
1029    <api>1.7.0</api>
1030   </version>
1031   <stability>
1032    <release>stable</release>
1033    <api>stable</api>
1034   </stability>
1035   <license uri="http://www.php.net/license">PHP</license>
1036   <notes>
1037Fix: build error with custom libevent installation prefixes like /lib(John Wamer)
1038   </notes>
1039  </release>
1040  <release>
1041   <version>
1042    <release>1.7.4</release>
1043    <api>1.7.0</api>
1044   </version>
1045   <stability>
1046    <release>stable</release>
1047    <api>stable</api>
1048   </stability>
1049   <license uri="http://www.php.net/license">PHP</license>
1050   <notes>
1051Fix: Segmentation fault caused by direct access to the zend object properties&apos; hash table
1052   </notes>
1053  </release>
1054  <release>
1055   <version>
1056    <release>1.7.3</release>
1057    <api>1.7.0</api>
1058   </version>
1059   <stability>
1060    <release>stable</release>
1061    <api>stable</api>
1062   </stability>
1063   <license uri="http://www.php.net/license">PHP</license>
1064   <notes>
1065Fix: in php_event.c write_property function was non-static
1066Fix: absence of get_gc property handler caused segfaults with gc_collect_cycles()
1067   </notes>
1068  </release>
1069  <release>
1070   <version>
1071    <release>1.7.2</release>
1072    <api>1.7.0</api>
1073   </version>
1074   <stability>
1075    <release>stable</release>
1076    <api>stable</api>
1077   </stability>
1078   <license uri="http://www.php.net/license">PHP</license>
1079   <notes>
1080Fix: bug #65320 where we got build errors in attempts to compile event statically(thanks to florin)
1081Fix: bug #65319 where config.m4 used &lt;php_version.h&gt; to detect current PHP version
1082Fix: config.m4 included -levent_pthreads into LDFLAGS even --without-event-pthreads configuration
1083Fix: evthread_use_pthreads() call skept due to a &quot;macro magic&quot;(PHP_EVENT_ASSERT)
1084   </notes>
1085  </release>
1086  <release>
1087   <version>
1088    <release>1.7.1</release>
1089    <api>1.7.0</api>
1090   </version>
1091   <stability>
1092    <release>stable</release>
1093    <api>stable</api>
1094   </stability>
1095   <license uri="http://www.php.net/license">PHP</license>
1096   <notes>
1097Fix: segmentation fault on gc_collect_cycles() after calling Event::free(), 5lava @ Bitbucket reported
1098Fix: assignment reference to &quot;data&quot; property caused &apos;Fatal error:  Cannot assign by reference to overloaded object&apos;
1099Fix: evnt object dtors sometimes didn&apos;t free the &apos;data&apos; member until the script shutdown phase
1100   </notes>
1101  </release>
1102  <release>
1103   <version>
1104    <release>1.7.0</release>
1105    <api>1.7.0</api>
1106   </version>
1107   <stability>
1108    <release>stable</release>
1109    <api>stable</api>
1110   </stability>
1111   <license uri="http://www.php.net/license">PHP</license>
1112   <notes>
1113Merged in 5lava/pecl-event (pull request #1) @bitbucket:
1114Fix: EventBufferEvent::setTimeouts() didn&apos;t work with double values
1115Fix: EventBuffer::copyout() didn&apos;t work in some cases
1116Add: EventBuffer::readFrom() method (corresponds to evbuffer_read())
1117Add: EventUtil::getSocketFD() method
1118   </notes>
1119  </release>
1120  <release>
1121   <version>
1122    <release>1.6.2</release>
1123    <api>1.6.0</api>
1124   </version>
1125   <stability>
1126    <release>stable</release>
1127    <api>stable</api>
1128   </stability>
1129   <license uri="http://www.php.net/license">PHP</license>
1130   <notes>
1131Fix: bug #64678 where Fedora Packaging Guidlines required LICENSE file
1132Fix: bug #64680 where we should check for SKIP_ONLINE_TESTS environment variable
1133Fix: bug #64679 where we had buffer overflow caused by struct sockaddr_storage * pointer
1134   </notes>
1135  </release>
1136  <release>
1137   <version>
1138    <release>1.6.1</release>
1139    <api>1.6.0</api>
1140   </version>
1141   <stability>
1142    <release>stable</release>
1143    <api>stable</api>
1144   </stability>
1145   <license uri="http://www.php.net/license">PHP</license>
1146   <notes>
1147Fix: bug #64652 where Event::__construct returned valid object, however, with
1148uninitialized internal struct which caused segmentation faults in further
1149method calls
1150   </notes>
1151  </release>
1152  <release>
1153   <version>
1154    <release>1.6.0</release>
1155    <api>1.6.0</api>
1156   </version>
1157   <stability>
1158    <release>stable</release>
1159    <api>stable</api>
1160   </stability>
1161   <license uri="http://www.php.net/license">PHP</license>
1162   <notes>
1163Fix: bug #64551 with build failed on Mac OS X
1164Fix: address argument of the listener accept callback contained garbage in case of a client connected via UNIX domain socket
1165Add: EventBuffer::write, EventUtil::setSocketOption methods and some constants
1166Refact: automatically set the upper bound of EventBuffer::search to the buffer length, if it is greater then the length
1167Fix: make the code compatible with PHP 5.5.0 .. 5.6.0-dev
1168Fix: build error with zts PHP setup
1169Fix: build error with libevent_extra disabled
1170Add: EventListener fd readonly property for numeric file descriptor of the socket associated with the listener
1171Add: EventBuffer::substr method
1172
1173INCOMPATIBLE CHANGES!
1174Renamed EventBuffer::remove to EventBuffer::read, EventBuffer::read now takes only max_bytes argument and returns string.
1175Renamed EventBuffer::removeBuffer to EventBuffer::appendFrom
1176EventBuffer::read now takes single argument &apos;size&apos; and returns the string read
1177   </notes>
1178  </release>
1179  <release>
1180   <version>
1181    <release>1.5.1</release>
1182    <api>1.5.0</api>
1183   </version>
1184   <stability>
1185    <release>stable</release>
1186    <api>stable</api>
1187   </stability>
1188   <license uri="http://www.php.net/license">PHP</license>
1189   <notes>
1190Fix: EventBuffer::removeBuffer returned boolean instead of the number of bytes read
1191Add: EventBuffer::fd property
1192Change: EventBuffer class is not final any more
1193   </notes>
1194  </release>
1195  <release>
1196   <version>
1197    <release>1.5.0</release>
1198    <api>1.5.0</api>
1199   </version>
1200   <stability>
1201    <release>stable</release>
1202    <api>stable</api>
1203   </stability>
1204   <license uri="http://www.php.net/license">PHP</license>
1205   <notes>
1206Fix: uninitialized socket caused segmentation fault in EventBufferEvent methods
1207Del: EventBufferPosition class removed, EventBuffer::search now accepts and returns integers
1208Add: EventBuffer::searchEol method
1209Add: EventUtil::getSocketName method
1210Add: EventListener::getSocketName method
1211Fix: memory leak due to lack of zend_hash_destroy on the ssl context options
1212Add: support of UNIX domain sockets in EventListener::__construct, EventBufferEvent::connect methods
1213   </notes>
1214  </release>
1215  <release>
1216   <version>
1217    <release>1.4.0</release>
1218    <api>1.4.0</api>
1219   </version>
1220   <stability>
1221    <release>beta</release>
1222    <api>beta</api>
1223   </stability>
1224   <license uri="http://www.php.net/license">PHP</license>
1225   <notes>
1226Add: HTTP server support:
1227  * EventHttp methods: setMaxBodySize, setMaxHeadersSize, setTimeout,
1228    addServerAlias, removeServerAlias setCallback, setDefaultCallback,
1229    setAllowedMethods, setMaxBodySize, setMaxHeadersSize, setTimeout,
1230    addServerAlias, removeServerAlias;
1231  * EventHttpRequest class, callback and custom data can be bound to the
1232    request for future use with EventHttpConnection
1233  * New EventHttpConnection::makeRequest method allows to make custom HTTP
1234    requests by means of EventHttpRequest class
1235Change: make EventDnsBase parameter optional in EventHttpConnection::__construct
1236Fix: classes/buffer_event.c: possible memory access violation in bufferevent callback
1237Fix: turn off buggy libevent thread lock debugging when built with --enable-event-debug
1238   </notes>
1239  </release>
1240  <release>
1241   <version>
1242    <release>1.3.0</release>
1243    <api>1.3.1</api>
1244   </version>
1245   <stability>
1246    <release>beta</release>
1247    <api>beta</api>
1248   </stability>
1249   <license uri="http://www.php.net/license">PHP</license>
1250   <notes>
1251Fix: possible memory access violations in EventBufferEvent input/output property handlers
1252Change: Event::$timer_pending property removed; generic Event::$pending property added
1253Fix: With OPT_LEAVE_SOCKETS_BLOCKING flag EventListener::__construct turned fd to non-blocking mode
1254Fix: property and class HashTable&apos;s were not free&apos;d in MSHUTDOWN
1255Add: Event::$data property
1256Fix: Event::__construct failed with Event::TIMEOUT flag
1257Fix: memory leak in EventBuffer::readLine
1258Add: --with-event-pthreads configure option
1259Fix: EventBase::reInit method&apos;s arginfo
1260   </notes>
1261  </release>
1262  <release>
1263   <version>
1264    <release>1.2.6</release>
1265    <api>1.3.0</api>
1266   </version>
1267   <stability>
1268    <release>beta</release>
1269    <api>beta</api>
1270   </stability>
1271   <license uri="http://www.php.net/license">PHP</license>
1272   <notes>
1273Fix: with OpenSSL turned off got error: undefined symbol: zim_EventUtil_sslRandPoll
1274Add: implemented get_properties property handler(is called when one casts an object to array)
1275Refact: removed memory alloc for empty property hashtables
1276Fix: heap corruption caused by EventBufferEvent callbacks(thanks to Marco Schuster)
1277Fix: continuous calls to EventBufferEvent::setCallbacks didn&apos;t free old fci/fcc(thanks to Marco Schuster)
1278Fix: possible heap corruption in EventListener&apos;s callback
1279Add: EventBase::resume method
1280   </notes>
1281  </release>
1282  <release>
1283   <version>
1284    <release>1.2.3</release>
1285    <api>1.2.0</api>
1286   </version>
1287   <stability>
1288    <release>alpha</release>
1289    <api>alpha</api>
1290   </stability>
1291   <license uri="http://www.php.net/license">PHP</license>
1292   <notes>
1293Fix: build errors
1294Fix: undefined symbol SSLv2_*_method when SL_OP_NO_SSLv2 defined
1295   </notes>
1296  </release>
1297  <release>
1298   <version>
1299    <release>1.2.0</release>
1300    <api>1.2.0</api>
1301   </version>
1302   <stability>
1303    <release>alpha</release>
1304    <api>alpha</api>
1305   </stability>
1306   <license uri="http://www.php.net/license">PHP</license>
1307   <notes>
1308Fix: non-static zend_always_inline function failed to compile with some (non-zts) php setups
1309Change: static EventBuffer::addBuffer made non-static with one argument
1310Add: EventBuffer expand, prepend, prependBuffer, drain, copyout, readLine, search,
1311setPosition methods
1312Add: EventBufferPosition class
1313Fix: configure error in FreeBSD
1314Add: OpenSSL support: EventBufferEvent methods: sslFilter, sslSocket, sslError, sslRenegotiate; EventSslContext class
1315Add: EventBuffer::pullup method
1316   </notes>
1317  </release>
1318  <release>
1319   <version>
1320    <release>1.1.1</release>
1321    <api>1.1.0</api>
1322   </version>
1323   <stability>
1324    <release>devel</release>
1325    <api>devel</api>
1326   </stability>
1327   <license uri="http://www.php.net/license">PHP</license>
1328   <notes>
1329Fix: the installer failed to determine location of src/common.h
1330   </notes>
1331  </release>
1332  <release>
1333   <version>
1334    <release>1.1.0</release>
1335    <api>1.1.0</api>
1336   </version>
1337   <stability>
1338    <release>devel</release>
1339    <api>devel</api>
1340   </stability>
1341   <license uri="http://www.php.net/license">PHP</license>
1342   <notes>
1343Procedural API converted to OOP API
1344   </notes>
1345  </release>
1346  <release>
1347   <version>
1348    <release>1.0.1</release>
1349    <api>1.0.0</api>
1350   </version>
1351   <stability>
1352    <release>devel</release>
1353    <api>devel</api>
1354   </stability>
1355   <license uri="http://www.php.net/license">PHP</license>
1356   <notes>
1357Fix: crash due to destruction of the internal bufferevent buffers (synced with oop branch)
1358Fix: extra memory consumption caused by continuous calls to bufferevent_get_input/_output
1359Fix: memory violation while parsing event_config_set_max_dispatch_interval parameters
1360   </notes>
1361  </release>
1362  <release>
1363   <date>2013-01-19</date>
1364   <version>
1365    <release>1.0.0</release>
1366    <api>1.0.0</api>
1367   </version>
1368   <stability>
1369    <release>devel</release>
1370    <api>devel</api>
1371   </stability>
1372   <license uri="http://www.php.net/license">PHP</license>
1373   <notes>
1374Libevent 2+ support added
1375   </notes>
1376  </release>
1377  <release>
1378   <date>2004-12-16</date>
1379   <lead>
1380    <name>Wez Furlong</name>
1381    <user>wez</user>
1382    <email>wez@php.net</email>
1383    <active>yes</active>
1384   </lead>
1385   <version>
1386    <release>0.9.1</release>
1387    <api>0.9.1</api>
1388   </version>
1389   <stability>
1390    <release>beta</release>
1391    <api>beta</api>
1392   </stability>
1393   <license uri="http://www.php.net/license">PHP</license>
1394   <notes>
1395Added event_timeout() function for easily scheduling a callback after a certain
1396period of time.  The timeout may be persistent to make the callback a recurrent
1397event.
1398
1399Fixed an issue with timercmp() on windows that caused a busy wait when the
1400scheduler could have performed a sleep.
1401
1402Windows scheduling engine now also processes the message queue while
1403waiting; useful for COM/GUI based scripts.
1404
1405Fixed build for threaded systems with real signals.
1406
1407Supports epoll(4), poll(2) and select(2) IO notification engines.
1408Support for /dev/poll and kqueue is pending.
1409
1410On Windows, currently only sockets can participate in the IO notification engine.
1411   </notes>
1412   <deps>
1413    <dep rel="ge" type="php" version="4.3.0" />
1414   </deps>
1415  </release>
1416  <version>
1417   <release>1.2.5</release>
1418   <api>1.2.1</api>
1419  </version>
1420  <version>
1421   <release>1.2.4</release>
1422   <api>1.2.1</api>
1423  </version>
1424  <stability>
1425   <release>alpha</release>
1426   <api>alpha</api>
1427  </stability>
1428  <stability>
1429   <release>alpha</release>
1430   <api>alpha</api>
1431  </stability>
1432  <license uri="http://www.php.net/license">PHP</license>
1433  <license uri="http://www.php.net/license">PHP</license>
1434  <notes>Fix: unneeded Z_ADDREF_P() calls in EventListener, EventBufferEvent constructors and factory methods
1435Fix: EventListener cached file descriptor for all connections
1436Change: EventBufferEvent enable/disable methods return bool now
1437Change: instead of stream pass numeric file descriptor to EventListener&apos;s accept-connection callback
1438Add: callbacks and the callback arg are now passed to EventBufferEvent::__construct as optional arguments</notes>
1439  <notes>Fix: deleted redundant len argument of EventBuffer::readLine
1440Fix: EventBuffer::readLine returned non-dup&apos;d string. Caused bugs with pointers.</notes>
1441 </changelog>
1442</package>
1443