ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/EV/Changes
Revision: 1.246
Committed: Wed Jan 22 16:27:45 2020 UTC (4 years, 3 months ago) by root
Branch: MAIN
Changes since 1.245: +6 -1 lines
Log Message:
*** empty log message ***

File Contents

# User Rev Content
1 root 1.143 Revision history for Perl extension EV
2 root 1.1
3 root 1.244 Changes marked with (libev) are changes in libev, and might have more
4 root 1.185 documentation in the libev Changes file.
5 root 1.223
6 root 1.245 TODO: accessors for other members (signum, statdata etc?)
7 root 1.246 - (libev) fixed a bug introduced in 4.31 when timerfds and signalfds were
8     used at the same time.
9     - (libev) 0 is now allowed as requested event mask in io watchers.
10     - (libev) once-per-minute wakeups will now be optimized away when
11     timerfds are available
12     - use the new ev_io_modify in ->events, instead of the potentially
13 root 1.245 slower ev_io_set.
14    
15 root 1.244 4.31 Fri Dec 20 21:57:00 CET 2019
16     - (libev) handle backends with minimum wait time a bit better by
17     not waiting in the presence of already-expired timers
18     (behaviour reported by Felipe Gasper).
19     - (libev) use timerfd to detect timejumps.
20     - (libev) new loop flag: EVFLAG_NOTIMERFD.
21    
22     4.30 Fri Nov 22 21:00:00 CET 2019
23     - (libev) use a different and hopefully even more portable
24     test to disable io_uring when header files are too old,
25     by directly testing LINUX_VERSION_CODE.
26     - (libev) fix a bug in the io_uring backend that polled the wrong
27     backend fd, causing it to not work in many cases.
28    
29 root 1.243 4.29 Fri Nov 22 15:34:29 CET 2019
30     - (libev) add io uring autoconf and non-autoconf detection,
31     the latter of which should disable io_uring compilation
32     on old systems.
33    
34 root 1.241 4.28 Tue Nov 19 13:55:39 CET 2019
35     - (libev) fix ev_port backend, thanks to David H. Gutteridge for
36 root 1.242 - (libev) many bugfixes in linuxaio backend.
37     - (libev) experimental io uring interface.
38 root 1.241 reminding me to actually release the fix.
39 root 1.238 - try to name ev.h more explicitly, to hopefully improve portability.
40 root 1.239 - opportunistically round up wait times for poll and epoll backend,
41     to avoid unnecessary loop iterations.
42     - add build dependency on ev_linuxaio.c.
43 root 1.240 - quickly (re)-ported to minix 3.3 before minix crashed again.
44 root 1.238
45 root 1.237 4.27 Thu Jun 27 09:39:58 CEST 2019
46 root 1.236 - (libev) completely rewritten linuxaio backend, maybe
47     usable as a general-use backend.
48     - (libev) use more aggressive assertions to catch
49     more usage errors.
50 root 1.237 - allow users to re-enable assert() in case it is disabled
51     by perl (which is typically the case).
52 root 1.236
53 root 1.235 4.26 Mon Jun 24 23:39:40 CEST 2019
54     - (libev) included experimental linux aio backend.
55 root 1.234 - allow the linux aio backend to be used by default
56     only when explicitly configured during Makefile.PL time.
57 root 1.233
58 root 1.231 4.25 Fri Dec 21 08:04:26 CET 2018
59     - (libev) updated to libev 4.25, minor fixes and enhancements.
60 root 1.229 - document the requirement to "use EV" when using EV::MakeMaker.
61 root 1.228 - only use __register_atfork with glibc and uclibc, as musl
62     defines __linux__, but doesn't implement the linux standard
63     base ABI, nor makes itself detectable via a macro, both apparently
64     by design, winning the "broken by design 2016 award" - well done.
65 root 1.230 - correct EV::periodic example 24h after midnight -> one day after
66     midnight (reported by Felix Ostmann).
67 root 1.228
68 root 1.227 4.22 Sun Dec 20 02:34:39 CET 2015
69     - (libev) when epoll detects unremovable fds in the fd set, rebuild
70     only the epoll descriptor, not the signal pipe, to avoid
71     SIGPIPE in ev_async_send. This doesn't solve it on fork,
72     so document what needs to be done in ev_loop_fork
73     (analyzed by Benjamin Mahler).
74     - (libev) remove superfluous sys/timeb.h include on win32
75     (analyzed by Jason Madden).
76     - updated libecb.
77    
78 root 1.226 4.21 Mon Jul 13 21:47:33 CEST 2015
79     - allow argument in timer->again.
80     - document timer->remaining.
81     - document default repeat value for timer->set.
82    
83 root 1.225 4.20 Sat Jun 20 13:07:34 CEST 2015
84     - added stability canary support.
85 root 1.224 - truly rely on automatic configuration for clock_gettime and others.
86 root 1.225 unfortunately, this doesn't help with activeperl and similar perls,
87 root 1.224 which define _POSIX_TIMERS without actually implementing any of it.
88 root 1.225 - (libev, ecb) make it compile as C++ again.
89     - (libev) fix a potential aliasing issue when accessing watcher cbs.
90 root 1.224
91 root 1.223 4.18 Sat Sep 6 20:37:23 CEST 2014
92     - use slightly better weay to find includes, to support multiarch
93     on newer perls.
94 root 1.185
95 root 1.222 4.17 Fri Apr 11 06:22:38 CEST 2014
96     - perl5porters broke Async::Interrupt, BDB, EV, IO::AIO, OpenCL
97     without warning by switching the meaning of USE_SOCKETS_AS_HANDLES
98     in 5.18. What's so attractive about giving a shit about backwards
99     compatibility - I will never understand.
100 root 1.219
101 root 1.221 4.16 Sat Mar 8 16:49:05 CET 2014
102 root 1.216 - make sure EV::CHECK is available at all times.
103     - avoid a spurious warning when perl -w overrides "no warnings".
104 root 1.219 - use perl's signal implementation on WIN32.
105 root 1.220 - ensure extern "C" function pointers are used for externally-visible
106 root 1.221 pointers.
107     - (libev) mark event pipe fd as cloexec after a fork (analyzed by Sami Farin).
108     - (ecb) support m68k, m88k and sh (patch by Miod Vallat).
109     - (libev) in the absence of autoconf, do not use the clock syscall
110     on glibc >= 2.17 (avoids the syscall AND -lrt on systems
111     doing clock_gettime in userspace).
112     - (ecb) work around memory barriers and volatile apparently both being
113     broken in visual studio 2008 and later (analysed and patch by Nicolas Noble).
114 root 1.216
115 root 1.215 4.15 Fri Mar 1 12:15:53 CET 2013
116     - (libev) upgrade to 4.15 - too many changes to list.
117 root 1.214 - EV::run now returns a boolean.
118 root 1.211 - API version 5:1.
119 root 1.214 - document that cleanup watchers are not available via perl.
120 root 1.212 - cast I32 to int in error message printf.
121 root 1.214 - remove dependencies on librt and libpthreads on GNU/Linux.
122 root 1.211
123 root 1.210 4.11 Sat Feb 4 19:56:26 CET 2012
124     - (libev) implement memory fences for (obsolete) llvm-gcc.
125    
126 root 1.209 4.10 Thu Jan 19 18:54:23 CET 2012
127     - (libev) fix a race where the workaround against the epoll fork
128     bugs caused signals to not be handled anymore.
129     - (libev) correct backend_fudge for most backends, and implement
130     a windows specific workaround to avoid looping because we call
131     both select and Sleep, both with different time resolutions.
132 root 1.207 - e_new wasn't declared static (causing very minor .so bloat).
133 root 1.208 - replace more old api names by new ones.
134 root 1.206
135 root 1.205 4.03 Tue Jan 11 14:51:05 CET 2011
136 root 1.203 - do not avoid the clock_gettime call on GNU/Linux anymore, as EV
137     links against -lpthread anyways - as a result, EV might now take
138     advantage of fast userspace clock_gettime implementations,
139     but also links against -lrt.
140 root 1.204 - (libev) lots of event port bug workarounds.
141     - (libev) officially support files in I/O watchers.
142     - (libev) new function ev_feed_signal.
143     - fix documentation parts still refering to the 3.x API.
144 root 1.203
145 root 1.202 4.02 Thu Dec 30 08:27:41 CET 2010
146     - the revents argument did not stringify correctly, as only the
147     numeric value was updated, while the string value was kept from
148     previous invocations.
149    
150 root 1.201 4.01 Sun Dec 5 12:42:13 CET 2010
151 root 1.197 - fully support EV_COMPAT3=0.
152 root 1.198 - default_fork was stupidly defined as inline.
153 root 1.199 - ask cpan to upgrade AnyEvent if < 5.29.
154 root 1.200 - support EV_EXTRA_DEFS during configuration.
155 root 1.201 - support -DEV_NO_LOOPS for snakker build.
156 root 1.197
157 root 1.196 4.00 Mon Oct 25 13:30:09 CEST 2010
158 root 1.194 - many API changes, see the manual.
159 root 1.196 - (libev) lots and lots of bugfixes, see the ev documentation.
160 root 1.187 - fix a bug where inotify usage would parse the same event
161     multiple times, causing various forms of breakage.
162     - greatly reduce stack usage for inotify (8kb to <0.5kb).
163 root 1.189 - expose ev_depth and ev_verify via the XS API.
164 root 1.196 - implement ev_cleanup watchers.
165 root 1.188 - (libev) ev_embed_stop did not correctly stop the watcher.
166     - (libev) disable poll backend on AIX.
167     - (libev) rename EV_TIMEOUT to EV_TIMER.
168     - (libev) add section on accept() problems to the manpage.
169 root 1.191 - (libev) no child watchers on win32.
170 root 1.190 - make code more aliasing compliant, in case perl is ever
171     translated to C.
172 root 1.193 - document the EV::CHECK runtime unavailability.
173 root 1.192 - ported to minix 3.1.7.
174 root 1.187
175 root 1.186 3.9 Thu Dec 31 07:59:59 CET 2009
176 root 1.182 - disable t/07* under automatic testing.
177 root 1.183 - increase t/09* timeouts as netbsd has *horribly* broken
178     select/kevent that *usually* sleep >>0.6s instead of 0.3.
179 root 1.184 - add constants EV::FLAG_NOSIGFD, EV::FLAG_NOINOTIFY and
180     EV::BACKEND_ALL.
181 root 1.185 - (libev) signalfd is no longer used by default.
182     - (libev) backport inotify code to C89.
183     - (libev) inotify file descriptors could leak into child processes.
184     - (libev) ev_stat watchers could keep an errornous extra ref on the loop.
185     - (libev) take advantage of inotify_init1, if available.
186     - (libev) the signal handling pipe wasn't always initialised under windows.
187     - changed minimum glibc requirement from glibc 2.9 to 2.7, for signalfd.
188     - (libev) only replace ev_stat.prev when we detect an actual difference.
189 root 1.182
190 root 1.181 3.8 Sun Aug 9 15:30:10 CEST 2009
191 root 1.180 - implement $loop->signal/signal_ns.
192 root 1.181 - (libev) incompatible change: do not necessarily reset signal
193     handler to SIG_DFL when a sighandler is stopped.
194     - (libev) ev_default_destroy did not properly free or zero some
195     members, potentially causing crashes and memory corruption on
196     repated ev_default_destroy/ev_default_loop calls.
197     - (libev) take advantage of signalfd on GNU/Linux systems.
198     - (libev) document that the signal mask might be in an unspecified
199     state when using libev's signal handling.
200     - (libev) take advantage of some GNU/Linux calls to set
201     cloexec/nonblock on fd creation, to avoid race conditions.
202     - implement internal glue code to interface more efficiently
203     with AnyEvent.
204 root 1.180
205 root 1.177 3.7 Fri Jul 17 16:49:16 CEST 2009
206 root 1.171 - add EV::loop_verify and EV::loop_depth.
207 root 1.172 - use output filehandle for i/o watchers waiting
208     for EV_WRITE, otherwise input filehandle.
209     - use common schmorp.h header.
210 root 1.176 - add EV::Timer->remaining.
211 root 1.175 - allow for subclassing of EV::Loop (see the exciting
212     EV::Loop::Async module for an example).
213     - added EV::invoke_pending and EV::pending_count.
214 root 1.171
215 root 1.177 - (libev) ev_unloop and ev_loop wrongly used a global variable to
216     exit loops, instead of using a per-loop variable.
217     - (libev) the ev_set_io_collect_interval interpretation has changed.
218     - add new functionality: EV::invoke_pending, EV::pending_count.
219     - add $timer->remaining.
220     - add EV::loop_depth.
221     - (libev) calling unloop in fork/prepare watchers will no longer poll
222     for new events.
223     - (libev) use GetSystemTimeAsFileTime instead of _timeb on windows,
224     for slightly higher accuracy.
225     - (libev) actually 0-initialise struct sigaction when installing
226     signals.
227    
228 root 1.170 3.6 Tue Apr 28 02:50:37 CEST 2009
229 root 1.167 - keepalive(0) could decrease the refcount of the loop
230     permanently.
231 root 1.168 - add ev_suspend/ev_resume, also make ev_now_update
232     accessible via the XS API.
233 root 1.169 - most EV::<eventtype> constants were missing and have been
234     added :/.
235     - add EV::VERSION_MAJOR/VERSION_MINOR constants.
236     - (libev) multiple timers becoming ready within an event loop
237     iteration will be invoked in the "correct" order now.
238     - (libev) do not leave the event loop early just because we have
239     no active watchers, fixing a problem when embedding a kqueue
240     loop that has active kernel events but no registered watchers
241     (reported by blacksand blacksand).
242     - (libev) correctly zero the idx values for arrays, so destroying
243     and reinitialising the default loop actually works (patch by
244     Malek Hadj-Ali).
245     - (libev) new EV::CUSTOM revents flag for use by applications.
246     - (libev) add documentation section about priorites.
247     - (libev) add a glossary to the dcoumentation.
248     - (libev) extend the ev_fork description slightly.
249     - (libev) optimize a jump out of call_pending.
250     - t/03_keepalive could fail when there was no actual error.
251 root 1.167
252 root 1.166 3.53 Sun Feb 15 02:38:20 CET 2009
253     - (libev) on win32, the event loop creation could randomly fail
254     due to an initialised variable having the wrong value.
255 root 1.165 - (libev) probe for CLOCK_REALTIME support at runtime as well and
256     fall back to gettimeofday if there is an error, to support older
257     operating systems with newer header files/libraries.
258     - prefer gettimeofday over clock_gettime by default.
259    
260 root 1.164 3.52 Wed Jan 7 21:46:14 CET 2009
261 root 1.163 - (libev) fix some issues in the select backend when in fd_set mode.
262     - (libev) due to a thinko, instead of disabling everything but
263     select on the borked OS X platform, everything but select was
264     allowed (reported by Emanuele Giaquinta).
265     - (libev) actually verify that local and remote port are matching in
266     libev's socketpair emulation, which makes denial-of-service
267     attacks harder (but not impossible - it's windows). Make sure
268     it even works under vista, which thinks that getpeer/sockname
269     should return fantasy port numbers.
270    
271 root 1.162 3.51 Wed Dec 24 23:01:59 CET 2008
272 root 1.161 - do not cache the arguments passed to callbacks if the refcount
273     indicates that the callback has stolen them.
274 root 1.159 - (libev) try to avoid librt on GNU/Linux.
275 root 1.160 - (libev) check port_getn return value dfferently, might potentially
276     avoid problems.
277 root 1.162 - (libev) fix a bug with stat watchers possibly causing freezes.
278     - (libev) work around OS X 10.5 breaking poll, now select is the
279     only viable choice left on that pile of garbage.
280 root 1.161 - play tester whore: disable some tests that typically fail only
281     on cpan tester machines.
282 root 1.159
283 root 1.158 3.49 Wed Nov 19 11:26:53 CET 2008
284 root 1.155 - fix typos in manpage (Alex Efros).
285 root 1.156 - increase timing even further, for the ever-overloaded cpan-tester
286     machines, and to the detriment of everybody else who wants a fast
287     make test.
288 root 1.157 - possible 5.6 compatibility.
289 root 1.158 - (libev) use inotify even on buggy kernels, but don't rely on it.
290     - (libev) use inotify only as an added hint on network filesystems.
291 root 1.155
292 root 1.154 3.48 Thu Oct 30 09:09:48 CET 2008
293 root 1.152 - (libev) use a generation counter to detect spurious epoll events
294 root 1.151 and recreate the kernel in such a case (sorry, it's slow, but
295     I didn't design epoll...).
296 root 1.150 - (libev) optimise away an EPOLL_CTL_ADD/MOD combo in the epoll
297     backend in some cases.
298     - (libev) use memset to initialise most arrays now and do away
299     with the init functions.
300 root 1.152 - speed up event callback invocation further (~15%), by
301 root 1.151 not creating the object reference each time.
302 root 1.153 - EV::sleep was documented, but not implemented. fun.
303 root 1.150
304     3.45 Tue Oct 21 22:20:39 CEST 2008
305     - (libev) disable inotify usage on linux <2.6.25 (kernel bug).
306 root 1.146 - (libev) ev_embed will now automatically follow fork.
307     - (libev) ev_once will now pass both io and timeout events to
308     the callback when both happen concurrently, instead of giving
309     one precedence.
310 root 1.149 - install C library documentation as EV::libev manpage (sorry, oesi).
311 root 1.150 - (libev) fix a minor performance bug in ev_stat handling.
312 root 1.146
313 root 1.145 3.44 Mon Sep 29 05:16:31 CEST 2008
314 root 1.144 - (libev) add EV::now_update and $loop->now_update.
315    
316 root 1.142 3.431 Sun Jul 13 00:19:02 CEST 2008
317     - made the EV::embed callback optional again. reported by
318     Vladimir Timofeev.
319    
320 root 1.141 3.43 Tue Jul 8 20:56:31 CEST 2008
321 root 1.140 - disabled warnings in EV.pm, the CHECK issue is now understood
322     and harmless.
323    
324 root 1.139 3.42 Mon May 26 07:36:46 CEST 2008
325 root 1.138 - (libev) work around another bug in windows perls and
326     windows itself: failed connects do NOT set read or write
327     flags in select, but this version of libev will.
328    
329 root 1.136 3.41 Thu May 22 01:39:40 CEST 2008
330 root 1.135 - (libev) fix many heap-related bugs (timers, periodics).
331 root 1.134 - (libev) improve timing stability of timers and periodics.
332 root 1.137 - expose ev_loop_verify to perl code.
333 root 1.134 - clarify documentation for periodic reschedule callbacks.
334     - verify that the passed callback argument is indeed a code
335     reference, for earlier error reporting and a nice calling
336     speed increase (as well as saving memory).
337    
338 root 1.133 3.4 Tue May 20 21:51:55 CEST 2008
339 root 1.132 - (libev) work around both a windows bug and a bug in perl's
340     select on windows when not waiting for any file descriptors.
341 root 1.131 - bundle ev.pod into the tarball, just to increase its size
342     (and for the poor internetless person).
343    
344 root 1.130 3.33 Sun May 18 12:43:04 CEST 2008
345     - (libev) use numerous enhancements such as a more
346     cache-friendly 4-heap and heap index caching for timers.
347     - remove undocumented ev_timer->at accessor.
348    
349 root 1.129 3.31 Wed Apr 16 20:48:59 CEST 2008
350     - (libev) post-last-minute fix for ev_poll.c problem.
351    
352 root 1.128 3.3 Wed Apr 16 19:04:47 CEST 2008
353 root 1.125 - (libev) linux eventfd support.
354 root 1.128 - (libev) inline more with C99 compilers.
355     - (libev) work around a number of bugs in valgrind.
356     - (libev) work around broken realloc on openbsd and darwin.
357 root 1.126 - added example to EV::MakeMaker manpage.
358 root 1.127 - add async_pending method.
359 root 1.125
360 root 1.123 3.2 Wed Apr 2 17:08:16 CEST 2008
361 root 1.117 - "ported" again to the Microsoft "C" language.
362 root 1.124 - relax testsuite timing for the benefit of freebsd users once more.
363 root 1.121 - fix EVAPI's ev_time and ev_sleep macros.
364 root 1.120 - (libev) fix select backend on 64 bit architetcures.
365 root 1.122 - (libev) ev_loop flags are now local to each invocation.
366 root 1.117
367 root 1.116 3.1 Sat Mar 8 11:41:14 CET 2008
368 root 1.113 - add ev_sync_* and ev_fork_* to EVAPI.h.
369 root 1.115 - provide EV::Embed->sweep method.
370     - new watcher type: async (not very useful in perl).
371 root 1.113
372 root 1.112 3.0 Mon Jan 28 13:23:11 CET 2008
373     - upgrade to libev-3.0.
374 root 1.111 - change child handler to incorporate tracing flag.
375    
376 root 1.110 2.01 Mon Dec 31 01:59:19 CET 2007
377     - found a minor problem in the testsuite that is only
378     caught by new Test::Harness versions (reported by Andreas
379     König).
380    
381 root 1.107 2.0 Sat Dec 22 17:47:03 CET 2007
382 root 1.100 - no longer force kqueue when enabled, enable it
383     on more systems (as its now by default not used on most).
384 root 1.95 - expose fork watchers.
385     - switch to libev's MULTIPLICITY API.
386 root 1.96 - use a slightly different include file name strategy.
387     - get rid of (unused) libevent emulation.
388 root 1.97 - 5% watcher management speedup due to callback optimisation
389     when inline closures are used, 5% slowdown due to multiplicity.
390 root 1.98 - very minimal support for dynamic event loops and embed watchers.
391 root 1.103 - fix name of prepare start/stop methods.
392 root 1.105 - create and export EV::sleep and EV::set_*_collect_interval.
393 root 1.106 - fix typos in manpage (Alex Efros).
394 root 1.95
395 root 1.94 1.86 Tue Dec 18 02:36:57 CET 2007
396 root 1.93 - add periodic->at methods.
397 root 1.92
398 root 1.91 1.85 Fri Dec 14 20:32:40 CET 2007
399 root 1.90 - further optimise epoll backend by adding a heuristic that
400     avoids EPOLL_CTL_DEL calls if possible.
401 root 1.87 - EV::signal->start was not async-signal safe.
402 root 1.89 - optimise start/stop when the fd hasn't changed.
403 root 1.87
404 root 1.86 1.8 Tue Dec 11 22:17:46 CET 2007
405 root 1.83 - API version 3:0.
406 root 1.81 - reduced fudge factor to zero for select, poll, epoll
407     and kqueue: your system better be posix-compliant
408     even in its extensions :->
409 root 1.82 - improve long-term numerical stability in periodic watchers
410     by introducing a separate offset value instead of reusing at.
411 root 1.84 - recalculate real/monotonic clocks before blocking fully
412     to avoid blocking for longer than necessary.
413 root 1.85 - fix bugs in the heap functions. this rarely lead to illegal
414     heap orderings.
415 root 1.81
416 root 1.80 1.72 Sat Dec 8 15:31:26 CET 2007
417 root 1.77 - add dummy loop arguments to some EVAPI functions
418     so that clients can use EV_A and EV_DEFAULT.
419 root 1.78 - expose ev_clear_pending.
420 root 1.79 - renamed trigger to invoke.
421 root 1.77
422 root 1.76 1.71 Fri Dec 7 19:10:24 CET 2007
423 root 1.75 - changed/implemented idle watcher priority.
424     - allow out-of-range priorities to be set.
425     - fix ->priority to actually work on started watchers.
426     - improved testsuite.
427    
428 root 1.74 1.6 Wed Dec 5 15:06:20 CET 2007
429 root 1.70 - add a missing SPAGAIN.
430 root 1.71 - ripped out EV::DNS, use EV::ADNS for a better backend.
431     - make ev_time callable from EVAPI.h.
432 root 1.72 - add EV::loop_count.
433 root 1.73 - some space optimisations.
434 root 1.70
435 root 1.69 1.5 Wed Nov 28 20:19:09 CET 2007
436 root 1.67 - add inotify backend.
437 root 1.69 - make testsuite even less sensible to timing issues,
438     add more stat tests.
439 root 1.68 - add ->attr, ->prev, ->stat calls to stat watcher.
440 root 1.67
441 root 1.66 1.4 Tue Nov 27 17:35:27 CET 2007
442 root 1.64 - work around a linux 2.4 kernel bug in child handlers.
443     - implement stat watcher interface.
444 root 1.65 - implement fork watcher interface.
445 root 1.64 - io->set did not keep the fh alive.
446     - actively check signal numbers/names to be valid.
447     - cleanups, minor fixes, new bugs.
448 root 1.66 - work around windows bugs in the testsuite.
449 root 1.64
450 root 1.63 1.3 Sun Nov 25 10:46:57 CET 2007
451     - stopping idle/check/prepare watchers could cause data corruption.
452 root 1.58 - implement and document EV::once.
453 root 1.57 - improved documentation, verify that netbsd indeed has the only
454     working kqueue implementation (out of darwin, freebsd, netbsd and
455     openbsd). Praise them!
456 root 1.62 - fix the data method so it might work.
457 root 1.59 - expose ev_ref/ev_unref to the C API.
458 root 1.61 - expose ref/unref in form of the ->keepalive method to perl.
459 root 1.58 - minor bugfixes and portability fixes.
460 root 1.57
461 root 1.56 1.2 Thu Nov 22 05:44:09 CET 2007
462     - disable kqueue by default on !netbsd, as its broken on freebsd,
463     darwin and openbsd and thus almost everywhere.
464     - add some allowance in t/01_timer.t for the uneven monotonic
465     vs. realtime clock tick on at least freebsd.
466     - add -lsocket -lnsl on solaris in case the perl guy forgot to
467     configure them.
468    
469 root 1.55 1.1 Wed Nov 21 06:08:48 CET 2007
470 root 1.53 - improved timer test to include periodics and
471     withstand small timing variations.
472 root 1.54 - many minor tweaks to libev.
473 root 1.53
474 root 1.52 1.0 Fri Nov 16 14:51:59 CET 2007
475 root 1.50 - require AnyEvent update if AnyEvent is installed.
476 root 1.51 - add solaris 10 port-based backend.
477     - add child_ns and fix check_ns.
478 root 1.52 - treat yes/no as enforcement, not as hint, when configuring,
479     documentation update (reported by Andy Grundman).
480 root 1.50
481 root 1.49 0.9 Wed Nov 14 22:24:49 CET 2007
482 root 1.45 - changed LIBEV_METHODS to LIBEV_FLAGS and the
483     way this is used inside libev.
484 root 1.46 - many, many bugfixes.
485     - add unloop constants.
486 root 1.47 - add timer test.
487 root 1.48 - ev_loop will now terminate immediately when no watchers are active.
488 root 1.45
489 root 1.44 0.8 Mon Nov 12 02:28:46 CET 2007
490 root 1.41 - fix "testsuite" again :().
491     - fix check/idle/prepare/child watcher stop.
492 root 1.42 - enourmously many fixes.
493     - rewritten select backend (mostly for win32).
494     - cache socket handles on win32.
495 root 1.43 - provide considerably finer control over configuration.
496 root 1.41
497 root 1.40 0.7 Fri Nov 9 20:37:58 CET 2007
498 root 1.39 - move AnyEvent adaptor into the AnyEvent module.
499 root 1.41 - use private copy of evdns.[ch].
500 root 1.39 - many minor fixes.
501    
502 root 1.38 0.6 Thu Nov 8 18:23:43 CET 2007
503 root 1.95 - (libev) better native win32 support.
504 root 1.35 - fix idle watchers.
505 root 1.37 - implement and document periodic reschedule callbacks.
506     - do not run dns test on !linux platforms (actually to exclude win32).
507 root 1.38 - fix (unused in EV :) poll backend.
508 root 1.34
509 root 1.33 0.51 Tue Nov 6 19:50:22 CET 2007
510 root 1.32 - fix kqueue/poll compilation issue.
511 root 1.33 - work around design issues in kqueue.
512 root 1.32 - enable kqueue by default, seems to work.
513    
514 root 1.31 0.5 Tue Nov 6 17:37:44 CET 2007
515 root 1.23 - add signal and pid mutators.
516 root 1.27 - add rstatus/rpid accessors.
517 root 1.24 - updated libev (lower cost for clock monotonic).
518 root 1.25 - support event priorities.
519 root 1.26 - try to find SIG_SIZE on perls that don't have it (Slaven Rezic).
520 root 1.28 - improved signal handling, fixed child watchers.
521 root 1.29 - experimentally add kqueue backend, completely untested.
522 root 1.30 - ported to cygwin and native win32.
523 root 1.23
524 root 1.22 0.1 Thu Nov 1 18:29:22 CET 2007
525 root 1.18 - replaced libevent by libev (total rewrite).
526     - many bugfixes w.r.t. libevent.
527     - new watcher types: periodic, check, prepare, child, idle.
528 root 1.16 - performance optimisations.
529 root 1.19 - added interactive configuration.
530 root 1.21 - added fork support.
531 root 1.16
532 root 1.14 0.03 Mon Oct 29 20:52:50 CET 2007
533 root 1.9 - add timed_io convenience constructors.
534     - improve documentation.
535 root 1.8 - support signal names in addition to signal numbers.
536 root 1.9 - support signal anyevent watchers.
537 root 1.10 - vastly improved testsuite (its all relative :).
538 root 1.11 - add EV::MakeMaker, beginning of C-level API.
539 root 1.12 - force strings to byte form.
540 root 1.6
541 root 1.5 0.02 Sun Oct 28 07:40:21 CET 2007
542 root 1.15 - call $EV::DIED in case a callback throws an exception.
543 root 1.4 - add const char * to typemap for possible 5.6 compatibility.
544 root 1.3
545     0.01 Sat Oct 27 19:10:18 CEST 2007
546     - initial release.
547    
548     0.00 Fri Oct 26 11:12:57 CEST 2007
549 root 1.1 - original version; cloned from JSON::XS
550