Revision history for libev, a high-performance and full-featured event loop.

3.4
	- work around an (undocumented) bug in winsocket select: if you
          provide only empty fd sets then select returns WSAEINVAL. how sucky.
        - use 1-based 2-heap for EV_MINIMAL, simplifies code, reduces
          codesize and makes for better cache-efficiency.
        - use 3-based 4-heap for !EV_MINIMAL. this makes better use
          of cpu cache lines and gives better growth behaviour than
          2-based heaps.
        - cache timestamp within heap for !EV_MINIMAL, to avoid random
          memory accesses.
        - document/add EV_USE_4HEAP and EV_HEAP_CACHE_AT.
        - fix a potential aliasing issue in ev_timer_again.
        - add/document ev_periodic_at, retract direct access to ->at.
        - improve ev_stat docs.
        - add portability requirements section.
	- fix manpage headers etc.
        - normalise WSA error codes to lower range on windows.

3.31 Wed Apr 16 20:45:04 CEST 2008
	- added last minute fix for ev_poll.c by Brandon Black.

3.3  Wed Apr 16 19:04:10 CEST 2008
        - event_base_loopexit should return 0 on success
          (W.C.A. Wijngaards).
	- added linux eventfd support.
        - try to autodetect epoll and inotify support
          by libc header version if not using autoconf.
        - new symbols: EV_DEFAULT_UC and EV_DEFAULT_UC_.
        - declare functions defined in ev.h as inline if
          C99 or gcc are available.
        - enable inlining with gcc versions 2 and 3.
        - work around broken poll implementations potentially
          not clearing revents field in ev_poll (Brandon Black)
          (no such systems are known at this time).
        - work around a bug in realloc on openbsd and darwin,
          also makes the errornous valgrind complaints
          go away (noted by various people).
        - fix ev_async_pending, add c++ wrapper for ev_async
          (based on patch sent by Johannes Deisenhofer.
        - add sensible set method to ev::embed.
        - made integer constants type int in ev.h.

3.2  Wed Apr  2 17:11:19 CEST 2008
	- fix a 64 bit overflow issue in the select backend,
          by using fd_mask instead of int for the mask.
        - rename internal sighandler to avoid clash with very old perls.
        - entering ev_loop will not clear the ONESHOT or NONBLOCKING
          flags of any outer loops anymore.
        - add ev_async_pending.

3.1  Thu Mar 13 13:45:22 CET 2008
	- implement ev_async watchers.
        - only initialise signal pipe on demand.
	- make use of sig_atomic_t configurable.
        - improved documentation.

3.0  Mon Jan 28 13:14:47 CET 2008
	- API/ABI bump to version 3.0.
	- ev++.h includes "ev.h" by default now, not <ev.h>.
	- slightly improved documentation.
	- speed up signal detection after a fork.
        - only optionally return trace status changed in ev_child
          watchers.
        - experimental (and undocumented) loop wrappers for ev++.h.

2.01 Tue Dec 25 08:04:41 CET 2007
	- separate Changes file.
	- fix ev_path_set => ev_stat_set typo.
        - remove event_compat.h from the libev tarball.
        - change how include files are found.
        - doc updates.
        - update licenses, explicitly allow for GPL relicensing.

2.0  Sat Dec 22 17:47:03 CET 2007
        - new ev_sleep, ev_set_(io|timeout)_collect_interval.
        - removed epoll from embeddable fd set.
        - fix embed watchers.
	- renamed ev_embed.loop to other.
	- added exported Symbol tables.
        - undefine member wrapper macros at the end of ev.c.
        - respect EV_H in ev++.h.

1.86 Tue Dec 18 02:36:57 CET 2007
	- fix memleak on loop destroy (not relevant for perl).

1.85 Fri Dec 14 20:32:40 CET 2007
        - fix some aliasing issues w.r.t. timers and periodics
          (not relevant for perl).

(for historic versions refer to EV/Changes, found in the Perl interface)

0.1  Wed Oct 31 21:31:48 CET 2007
	- original version; hacked together in <24h.

