ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/EV/Changes
(Generate patch)

Comparing EV/Changes (file contents):
Revision 1.192 by root, Thu Jul 8 00:45:03 2010 UTC vs.
Revision 1.246 by root, Wed Jan 22 16:27:45 2020 UTC

1Revision history for Perl extension EV 1Revision history for Perl extension EV
2 2
3Changes marked with (libev) are changes in libev, and have more 3Changes marked with (libev) are changes in libev, and might have more
4documentation in the libev Changes file. 4documentation in the libev Changes file.
5 5
64.00 6TODO: accessors for other members (signum, statdata etc?)
7 - (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 slower ev_io_set.
14
154.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
224.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
294.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
344.28 Tue Nov 19 13:55:39 CET 2019
35 - (libev) fix ev_port backend, thanks to David H. Gutteridge for
36 - (libev) many bugfixes in linuxaio backend.
37 - (libev) experimental io uring interface.
38 reminding me to actually release the fix.
39 - try to name ev.h more explicitly, to hopefully improve portability.
40 - 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 - quickly (re)-ported to minix 3.3 before minix crashed again.
44
454.27 Thu Jun 27 09:39:58 CEST 2019
46 - (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 - allow users to re-enable assert() in case it is disabled
51 by perl (which is typically the case).
52
534.26 Mon Jun 24 23:39:40 CEST 2019
54 - (libev) included experimental linux aio backend.
55 - allow the linux aio backend to be used by default
56 only when explicitly configured during Makefile.PL time.
57
584.25 Fri Dec 21 08:04:26 CET 2018
59 - (libev) updated to libev 4.25, minor fixes and enhancements.
60 - document the requirement to "use EV" when using EV::MakeMaker.
61 - 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 - correct EV::periodic example 24h after midnight -> one day after
66 midnight (reported by Felix Ostmann).
67
684.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
784.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
834.20 Sat Jun 20 13:07:34 CEST 2015
84 - added stability canary support.
85 - truly rely on automatic configuration for clock_gettime and others.
86 unfortunately, this doesn't help with activeperl and similar perls,
87 which define _POSIX_TIMERS without actually implementing any of it.
88 - (libev, ecb) make it compile as C++ again.
89 - (libev) fix a potential aliasing issue when accessing watcher cbs.
90
914.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
954.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
1014.16 Sat Mar 8 16:49:05 CET 2014
102 - make sure EV::CHECK is available at all times.
103 - avoid a spurious warning when perl -w overrides "no warnings".
104 - use perl's signal implementation on WIN32.
105 - ensure extern "C" function pointers are used for externally-visible
106 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
1154.15 Fri Mar 1 12:15:53 CET 2013
116 - (libev) upgrade to 4.15 - too many changes to list.
117 - EV::run now returns a boolean.
118 - API version 5:1.
119 - document that cleanup watchers are not available via perl.
120 - cast I32 to int in error message printf.
121 - remove dependencies on librt and libpthreads on GNU/Linux.
122
1234.11 Sat Feb 4 19:56:26 CET 2012
124 - (libev) implement memory fences for (obsolete) llvm-gcc.
125
1264.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 - e_new wasn't declared static (causing very minor .so bloat).
133 - replace more old api names by new ones.
134
1354.03 Tue Jan 11 14:51:05 CET 2011
136 - 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 - (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
1454.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
1504.01 Sun Dec 5 12:42:13 CET 2010
151 - fully support EV_COMPAT3=0.
152 - default_fork was stupidly defined as inline.
153 - ask cpan to upgrade AnyEvent if < 5.29.
154 - support EV_EXTRA_DEFS during configuration.
155 - support -DEV_NO_LOOPS for snakker build.
156
1574.00 Mon Oct 25 13:30:09 CEST 2010
158 - many API changes, see the manual.
159 - (libev) lots and lots of bugfixes, see the ev documentation.
7 - fix a bug where inotify usage would parse the same event 160 - fix a bug where inotify usage would parse the same event
8 multiple times, causing various forms of breakage. 161 multiple times, causing various forms of breakage.
9 - greatly reduce stack usage for inotify (8kb to <0.5kb). 162 - greatly reduce stack usage for inotify (8kb to <0.5kb).
10 - renamed loop_verify to verify, loop_count to iteration and
11 loop_depth to depth.
12 - expose ev_depth and ev_verify via the XS API. 163 - expose ev_depth and ev_verify via the XS API.
164 - implement ev_cleanup watchers.
13 - (libev) ev_embed_stop did not correctly stop the watcher. 165 - (libev) ev_embed_stop did not correctly stop the watcher.
14 - (libev) disable poll backend on AIX. 166 - (libev) disable poll backend on AIX.
15 - (libev) rename EV_TIMEOUT to EV_TIMER. 167 - (libev) rename EV_TIMEOUT to EV_TIMER.
16 - (libev) add section on accept() problems to the manpage. 168 - (libev) add section on accept() problems to the manpage.
17 - (libev) no child watchers on win32. 169 - (libev) no child watchers on win32.
18 - make code more aliasing compliant, in case perl is ever 170 - make code more aliasing compliant, in case perl is ever
19 translated to C. 171 translated to C.
172 - document the EV::CHECK runtime unavailability.
20 - ported to minix 3.1.7. 173 - ported to minix 3.1.7.
21 174
223.9 Thu Dec 31 07:59:59 CET 2009 1753.9 Thu Dec 31 07:59:59 CET 2009
23 - disable t/07* under automatic testing. 176 - disable t/07* under automatic testing.
24 - increase t/09* timeouts as netbsd has *horribly* broken 177 - increase t/09* timeouts as netbsd has *horribly* broken

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines