File libev.changes of Package libev

Thu Feb 29 16:15:33 UTC 2024 -

- Use %autosetup macro. Allows to eliminate the usage of deprecated
- modified patches
  % libev-4.15_compiler_warnings.patch (refreshed)

Thu Oct 12 10:17:23 UTC 2023 -

- changed comment in sig file
- modified sources
  % libev-4.33.tar.gz.sig

Tue Oct  3 13:50:30 UTC 2023 -

- run signify only on Factory

Fri Sep  8 07:47:43 UTC 2023 -

- %bcond for signify

Tue Jun 30 21:30:24 UTC 2020 - Andreas Stieger <>

- update to 4.33:
  * New feature ev_io_modify can modify the event watch mask in
    I/O watchers without incurring overhead from changed fd
- includes changes from 4.31:
  * new backend iouring using new event polling mechanism in
    Linux 4.18
  * take advantage of timerfds to detect time jumps
- add libev-4.33-nonvoid-return.patch to fix build
- add signify (bsd) based source verification

Wed Jul 17 18:10:28 UTC 2019 -

- version update to 4.27
  * 4.27 Thu Jun 27 22:43:44 CEST 2019
        - linux aio backend almost complete rewritten to work around its
        - epoll backend now mandatory for linux aio backend.
        - fail assertions more aggressively on invalid fd's detected
          in the event loop, do not just silently fd_kill in case of
          user error.
        - ev_io_start/ev_io_stop now verify the watcher fd using
          a syscall when EV_VERIFY is 2 or higher.
  * 4.26 (EV only)
        - update to libecb 0x00010006.
        - new experimental linux aio backend (linux 4.18+).
        - removed redundant 0-ptr check in ev_once.
        - updated/extended ev_set_allocator documentation.
        - replaced EMPTY2 macro by array_needsize_noinit.
        - minor code cleanups.
        - epoll backend now uses epoll_create1 also after fork.
  * 4.25 Fri Dec 21 07:49:20 CET 2018
          (EV_THROW still provided) and now uses noexcept on C++11 or newer.
        - move the darwin select workaround highe rin ev.c, as newer versions of
          darwin managed to break their broken select even more.
        - ANDROID => __ANDROID__ (reported by
        - disable epoll_create1 on android because it has broken header files
          and google is unwilling to fix them (reported by
        - avoid a minor compilation warning on win32.
        - c++: remove deprecated dynamic throw() specifications.
        - c++: improve the (unsupported) bad_loop exception class.
        - backport perl ev_periodic example to C, untested.
        - update libecb, biggets change is to include a memory fence
          in ECB_MEMORY_FENCE_RELEASE on x86/amd64.
        - minor autoconf/automake modernisation.
- do not edit source in %prep, so they are not edited after quilt

Thu Sep 28 10:14:07 UTC 2017 -

- Update package descriptions and RPM categories.

Mon Jul 17 08:52:41 UTC 2017 -

- Version update to latest release 4.24:
  * bump version to 4.24, as the release tarball inexplicably
    didn't have the right version in ev.h, even though the cvs-tagged
    version did have the right one (reported by Ales Teska).
- Version update to release 4.23:
  * move some declarations at the beginning to help certain retarded
    microsoft compilers, even though their documentation claims
    otherwise (reported by Ruslan Osmanov).
- Run over with spec-cleaner and remove empty comment lines
- Remove mandriva condition

Thu Dec 24 14:46:12 UTC 2015 -

- Update to 4.22
  * when epoll detects unremovable fds in the fd set, rebuild only 
    the epoll descriptor, not the signal pipe, to avoid SIGPIPE in 
    ev_async_send. This doesn't solve it on fork, so document what 
    needs to be done in ev_loop_fork (analyzed by Benjamin Mahler).
  * remove superfluous sys/timeb.h include on win32 (analyzed by 
    Jason Madden).
  * updated libecb.
- Changes for 4.20
  * prefer noexcept over throw () with C++ 11.
  * update ecb.h due to incompatibilities with c11.
  * fix a potential aliasing issue when reading and writing 
    watcher callbacks.
- Refresh libev-4.15_compiler_warnings.patch

Wed Jul 29 09:53:46 UTC 2015 -

- Add baselibs.conf: build libev4-32bit, as needed by

Wed Jan 14 09:13:42 UTC 2015 -

- update to version 4.19
  * 4.19 Thu Sep 25 08:18:25 CEST 2014
    - ev.h wasn't valid C++ anymore, which tripped compilers other
      than clang, msvc or gcc (analyzed by Raphael 'kena' Poss).
      Unfortunately, C++ doesn't support typedefs for function
      pointers fully, so the affected declarations have to spell
      out the types each time.
    - when not using autoconf, tighten the check for clock_gettime
      and related functionality.
  * 4.18 Fri Sep  5 17:55:26 CEST 2014
    - events on files were not always generated properly with the
      epoll backend (testcase by Assaf Inbal).
    - mark event pipe fd as cloexec after a fork (analyzed by Sami
    - (ecb) support m68k, m88k and sh (patch by Miod Vallat).
    - use a reasonable fallback for EV_NSIG instead of erroring out
      when we can't detect the signal set size.
    - in the absence of autoconf, do not use the clock syscall
      on glibc >= 2.17 (avoids the syscall AND -lrt on systems
      doing clock_gettime in userspace).
    - ensure extern "C" function pointers are used for
      externally-visible loop callbacks (not watcher callbacks yet)
    - (ecb) work around memory barriers and volatile apparently
      both being broken in visual studio 2008 and later (analysed
      and patch by Nicolas Noble).
Thu Apr 11 04:29:08 UTC 2013 -

- update to version 4.15
  - destroying a non-default loop would stop the global waitpid
    watcher (Denis Bilenko).
  - queueing pending watchers of higher priority from a watcher now invokes
    them in a timely fashion (reported by Denis Bilenko).
  - add throw() to all libev functions that cannot throw exceptions, for
    further code size decrease when compiling for C++.
  - add throw () to callbacks that must not throw exceptions (allocator,
    syserr, loop acquire/release, periodic reschedule cbs).
  - fix event_base_loop return code, add event_get_callback, event_base_new,
    event_base_get_method calls to improve libevent 1.x emulation and add
    some libevent 2.x functionality (based on a patch by Jeff Davey).
  - add more memory fences to fix a bug reported by Jeff Davey. Better
    be overfenced than underprotected.
  - ev_run now returns a boolean status (true meaning watchers are
    still active).
  - ev_once: undef EV_ERROR in ev_kqueue.c, to avoid clashing with
    libev's EV_ERROR (reported by 191919).
  - (ecb) add memory fence support for xlC (Darin McBride).
  - (ecb) add memory fence support for gcc-mips (Anton Kirilov).
  - (ecb) add memory fence support for gcc-alpha (Christian Weisgerber).
  - work around some kernels losing file descriptors by leaking
    the kqueue descriptor in the child.
  - work around linux inotify not reporting IN_ATTRIB changes for directories
    in many cases.
  - include sys/syscall.h instead of plain syscall.h.
  - check for io watcher loops in ev_verify, check for the most
    common reported usage bug in ev_io_start.
  - choose socket vs. WSASocket at compiletime using EV_USE_WSASOCKET.
  - always use WSASend/WSARecv directly on windows, hoping that this
    works in all cases (unlike read/write/send/recv...).
  - try to detect signals around a fork faster (test program by
    Denis Bilenko).
  - work around recent glibc versions that leak memory in realloc.
  - rename ev::embed::set to ev::embed::set_embed to avoid clashing
    the watcher base set (loop) method.
  - rewrite the async/signal pipe logic to always keep a valid fd, which
    simplifies (and hopefully correctifies :) the race checking
    on fork, at the cost of one extra fd.
  - add fat, msdos, jffs2, ramfs, ntfs and btrfs to the list of
    inotify-supporting filesystems.
  - move orig_CFLAGS assignment to after AC_INIT, as newer autoconf
    versions ignore it before
  - add some untested android support.
  - enum expressions must be of type int (reported by Juan Pablo L).
- rebase libev-4.15_compiler_warnings.patch

Thu Dec 20 11:39:16 UTC 2012 -

- fix mandriva build
- don't use obsolete makeinstall macro

Sat Jul  7 14:38:42 UTC 2012 -

- update to version 4.11
  - INCOMPATIBLE CHANGE: ev_timer_again now clears the pending
    status, as was documented already, but not implemented in the
    repeating case.
  - new compiletime symbols: EV_NO_SMP and EV_NO_THREADS.
  - fix a race where the workaround against the epoll fork bugs
    caused signals to not be handled anymore.
  - correct backend_fudge for most backends, and implement a
    windows specific workaround to avoid looping because we call
    both select and Sleep, both with different time resolutions.
  - document range and guarantees of ev_sleep.
  - document reasonable ranges for periodics interval and offset.
  - rename backend_fudge to backend_mintime to avoid future
    confusion :)
  - change the default periodic reschedule function to hopefully
    be more exact and correct even in corner cases or in the far
  - do not rely on -lm anymore: use it when available but use our
    own floor () if it is missing. This should make it easier to
    embed, as no external libraries are required.
  - strategically import macros from libecb and mark rarely-used
    functions as cache-cold (saving almost 2k code size on typical
    amd64 setups).
  - add Symbols.ev and Symbols.event files, that were missing.
  - fix backend_mintime value for epoll (was 1/1024, is 1/1000 now).
  - fix #3 "be smart about timeouts" to not "deadlock" when
    timeout == now, also improve the section overall.
  - support new EV_API_STATIC mode to make all libev symbols
  - supply default CFLAGS of -g -O3 with gcc when original CFLAGS
    were empty.
- generate .pc manually to avoid having to regenerate the patch
  (that is not accepted upstream) and autoreconf call

Fri Dec 16 12:01:39 UTC 2011 -

- update to version 4.04
  - fix two problems in the native win32 backend, where reuse of fd's
    with different underlying handles caused handles not to be removed
    or added to the select set (analyzed and tested by Bert Belder).
  - do no rely on ceil() in ev_e?poll.c.
  - backport libev to HP-UX versions before 11 v3.
  - configure did not detect nanosleep and clock_gettime properly when
    they are available in the libc (as opposed to -lrt).
- update to version 4.03
  - officially support polling files with all backends.
  - support files, /dev/zero etc. the same way as select in the epoll
    backend, by generating events on our own.
  - ports backend: work around solaris bug 6874410 and many related ones
    (EINTR, maybe more), with no performance loss (note that the solaris
    bug report is actually wrong, reality is far more bizarre and broken
    than that).
  - define EV_READ/EV_WRITE as macros in event.h, as some programs use
    #ifdef to test for them.
  - new (experimental) function: ev_feed_signal.
  - new (to become default) EVFLAG_NOSIGMASK flag.
  - new EVBACKEND_MASK symbol.

Fri Dec 16 10:13:55 UTC 2011 -

- explicit specify package group for subpackages to fix SLE build
  "error: Group field must be present in package: libev4"
- BuildRequire pkgconfig instead of pkg-config to be more compatible

Thu Dec  8 13:59:12 UTC 2011 -

- license seems to be BSD-2-Clause

Sun Nov 13 09:16:12 UTC 2011 -

- add libtool as explicit buildrequire to avoid implicit dependency from prjconf

Sat Nov  6 09:21:44 UTC 2010 -

- build-require pkg-config to provide pkgconfig(libev)
- update to version 4.01
  - automake fucked it up, apparently, --add-missing -f is not quite enough
    to make it update its files, so 4.00 didn't install ev++.h and
    event.h on make install. grrr.
  - ev_loop(count|depth) didn't return anything (Robin Haberkorn).
  - change EV_UNDEF to 0xffffffff to silence some overzealous compilers.
  - use "(libev) " prefix for all libev error messages now.

Mon Oct 25 12:57:26 UTC 2010 -

- update to version 4.00
  - "PORTING FROM LIBEV 3.X TO 4.X" (in ev.pod) is recommended
  - ev_embed_stop did not correctly stop the watcher (very good
    testcase by Vladimir Timofeev).
  - ev_run will now always update the current loop time - it
    erroneously didn't when idle watchers were active, causing
    timers not to fire.
  - fix a bug where a timeout of zero caused the timer not to fire
    in the libevent emulation (testcase by Péter Szabó).
  - applied win32 fixes by Michael Lenaghan (also James Mansion).
  - replace EV_MINIMAL by EV_FEATURES.
  - prefer EPOLL_CTL_ADD over EPOLL_CTL_MOD in some more cases, as
    it seems the former is *much* faster than the latter.
  - linux kernel version detection (for inotify bug workarounds)
    did not work properly.
  - reduce the number of spurious wake-ups with the ports backend.
  - remove dependency on sys/queue.h on freebsd (patch by Vanilla
  - do async init within ev_async_start, not ev_async_set, which
    avoids an API quirk where the set function must be called in
    the C++ API even when there is nothing to set.
  - add (undocumented) EV_ENABLE when adding events with kqueue,
    this might help with OS X, which seems to need it despite
    documenting not to need it (helpfully pointed out by Tilghman
  - do not use poll by default on freebsd, it's broken (what isn't
    on freebsd...).
  - allow to embed epoll on kernels >= 2.6.32.
  - configure now prepends -O3, not appends it, so one can still
    override it.
  - ev.pod: greatly expanded the portability section, added a
    porting section, a description of watcher states and made lots
    of minor fixes.
  - disable poll backend on AIX, the poll header spams the
    namespace and it's not worth working around dead platforms
    (reported and analyzed by Aivars Kalvans).
  - improve header file compatibility of the standalone eventfd
    code in an obscure case.
  - implement EV_AVOID_STDIO option.
  - do not use sscanf to parse linux version number (smaller,
    faster, no sscanf dependency).
  - new EV_CHILD_ENABLE and EV_SIGNAL_ENABLE configurable settings.
  - update libev.m4 HAVE_CLOCK_SYSCALL test for newer glibcs.
  - add section on accept() problems to the manpage.
  - rename EV_TIMEOUT to EV_TIMER.
  - rename ev_loop_count/depth/verify/loop/unloop.
  - remove ev_default_destroy and ev_default_fork.
  - switch to two-digit minor version.
  - work around an apparent gentoo compiler bug.
  - use enum instead of #define for most constants.
  - improve compatibility to older C++ compilers.
  - (experimental) ev_run/ev_default_loop/ev_break/ev_loop_new have
    now default arguments when compiled as C++.
  - ev_loop_new no longer leaks memory when loop creation failed.
  - new ev_cleanup watcher type.
- move pkgconfig file to devel package
- updated compiler warnings patch:
  old name libev-3.9_compiler_warnings.patch
  new name libev-4.00_compiler_warnings.patch

Mon Aug 23 13:26:25 UTC 2010 -

- added libev-3.9_pkg-config.patch:
  patch by stbuehler.

Wed Jul 14 15:39:22 UTC 2010 -

- update to 3.9
  for the changes see /usr/share/doc/packages/libev-devel/Changes

Thu Feb 19 12:29:58 CET 2009 -

- update to 3.53
  for the changes see /usr/share/doc/packages/libev-devel/Changes

Tue Sep 16 17:05:17 CEST 2008 -

- update to 3.43
  for the changes see /usr/share/doc/packages/libev-devel/Changes

Fri Feb 29 00:34:46 CET 2008 -

- update to version 3.0:
  - 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.
- additional changes from 2.01:
  - 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.

Sun Dec 23 17:34:05 CET 2007 -

- fix license

Sun Dec 23 16:56:42 CET 2007 -

- initial package

openSUSE Build Service is sponsored by