[UPDATE] devel/libev (4.27 -> 4.31)
this patche updates GNU libev to version 4.31. Changelog: 4.31 Fri Dec 20 21:58:29 CET 2019 - handle backends with minimum wait time a bit better by not waiting in the presence of already-expired timers (behaviour reported by Felipe Gasper). - new feature: use timerfd to detect timejumps quickly, can be disabled with the new EVFLAG_NOTIMERFD loop flag. - document EV_USE_SIGNALFD feature macro. 4.30 (EV only) - change non-autoconf test for __kernel_rwf_t by testing LINUX_VERSION_CODE, the most direct test I could find. - fix a bug in the io_uring backend that polled the wrong backend fd, causing it to not work in many cases. 4.29 (EV only) - add io uring autoconf and non-autoconf detection. - disable io_uring when some header files are too old. 4.28 (EV only) - linuxaio backend resulted in random memory corruption when loop is forked. - linuxaio backend might have tried to cancel an iocb multiple times (was unable to trigger this). - linuxaio backend now employs a generation counter to avoid handling spurious events from cancelled requests. - io_cancel can return EINTR, deal with it. also, assume io_submit also returns EINTR. - fix some other minor bugs in linuxaio backend. - ev_tstamp type can now be overriden by defining EV_TSTAMP_T. - cleanup: replace expect_true/false and noinline by their libecb counterparts. - move syscall infrastructure from ev_linuxaio.c to ev.c. - prepare io_uring integration. - tweak ev_floor. - epoll, poll, win32 Sleep and other places that use millisecond reslution now all try to round up times. - solaris port backend didn't compile. - abstract time constants into their macros, for more flexibility. Cheers, Alex Index: Makefile === RCS file: /cvs/ports/devel/libev/Makefile,v retrieving revision 1.25 diff -u -p -u -p -r1.25 Makefile --- Makefile 31 Aug 2019 17:21:33 - 1.25 +++ Makefile 18 Mar 2020 08:57:17 - @@ -3,7 +3,7 @@ COMMENT = high-performance event loop library # p5-EV should probably be kept in sync -DISTNAME = libev-4.27 +DISTNAME = libev-4.31 CATEGORIES = devel SHARED_LIBS= ev 3.1 # 4.0 Index: distinfo === RCS file: /cvs/ports/devel/libev/distinfo,v retrieving revision 1.13 diff -u -p -u -p -r1.13 distinfo --- distinfo 31 Aug 2019 17:21:33 - 1.13 +++ distinfo 18 Mar 2020 08:57:17 - @@ -1,2 +1,2 @@ -SHA256 (libev-4.27.tar.gz) = LVUm/I2k8HLdXHPhj7sWZvXvjteLc7uhLhlc/dgQNE4= -SIZE (libev-4.27.tar.gz) = 556658 +SHA256 (libev-4.31.tar.gz) = 7YVdK1IRjjLAwaajK9GMl/nmcRylEfXuEt47nszGblo= +SIZE (libev-4.31.tar.gz) = 565540 Index: pkg/PLIST === RCS file: /cvs/ports/devel/libev/pkg/PLIST,v retrieving revision 1.3 diff -u -p -u -p -r1.3 PLIST --- pkg/PLIST 23 Apr 2013 18:59:53 - 1.3 +++ pkg/PLIST 18 Mar 2020 08:57:17 - @@ -1,7 +1,7 @@ @comment $OpenBSD: PLIST,v 1.3 2013/04/23 18:59:53 dcoppa Exp $ include/ev++.h include/ev.h -lib/libev.a +@static-lib lib/libev.a lib/libev.la @lib lib/libev.so.${LIBev_VERSION} @man man/man3/ev.3
Re: [UPDATE] devel/libev (4.27 -> 4.31)
On 2020/03/18 10:02, Alex Naumov wrote: > this patche updates GNU libev to version 4.31. Around 350 ports depend on this, what testing has been done? Also note the "p5-EV should probably be kept in sync" comment - the two ports use the same distfile and most of the changelog entries you show only relate to p5-EV (the "EV only" ones) ... (actually the word "probably" should probably be removed from the comment) > Changelog: > > 4.31 Fri Dec 20 21:58:29 CET 2019 > - handle backends with minimum wait time a bit better by not > waiting in the presence of already-expired timers > (behaviour reported by Felipe Gasper). > - new feature: use timerfd to detect timejumps quickly, > can be disabled with the new EVFLAG_NOTIMERFD loop flag. > - document EV_USE_SIGNALFD feature macro. > > 4.30 (EV only) > - change non-autoconf test for __kernel_rwf_t by testing > LINUX_VERSION_CODE, the most direct test I could find. > - fix a bug in the io_uring backend that polled the wrong > backend fd, causing it to not work in many cases. > > 4.29 (EV only) > - add io uring autoconf and non-autoconf detection. > - disable io_uring when some header files are too old. > > 4.28 (EV only) > - linuxaio backend resulted in random memory corruption > when loop is forked. > - linuxaio backend might have tried to cancel an iocb > multiple times (was unable to trigger this). > - linuxaio backend now employs a generation counter to > avoid handling spurious events from cancelled requests. > - io_cancel can return EINTR, deal with it. also, assume > io_submit also returns EINTR. > - fix some other minor bugs in linuxaio backend. > - ev_tstamp type can now be overriden by defining EV_TSTAMP_T. > - cleanup: replace expect_true/false and noinline by their > libecb counterparts. > - move syscall infrastructure from ev_linuxaio.c to ev.c. > - prepare io_uring integration. > - tweak ev_floor. > - epoll, poll, win32 Sleep and other places that use millisecond > reslution now all try to round up times. > - solaris port backend didn't compile. > - abstract time constants into their macros, for more flexibility. > > > > Cheers, > Alex > Index: Makefile > === > RCS file: /cvs/ports/devel/libev/Makefile,v > retrieving revision 1.25 > diff -u -p -u -p -r1.25 Makefile > --- Makefile 31 Aug 2019 17:21:33 - 1.25 > +++ Makefile 18 Mar 2020 08:57:17 - > @@ -3,7 +3,7 @@ > COMMENT =high-performance event loop library > > # p5-EV should probably be kept in sync > -DISTNAME = libev-4.27 > +DISTNAME = libev-4.31 > CATEGORIES = devel > > SHARED_LIBS= ev 3.1 # 4.0 > Index: distinfo > === > RCS file: /cvs/ports/devel/libev/distinfo,v > retrieving revision 1.13 > diff -u -p -u -p -r1.13 distinfo > --- distinfo 31 Aug 2019 17:21:33 - 1.13 > +++ distinfo 18 Mar 2020 08:57:17 - > @@ -1,2 +1,2 @@ > -SHA256 (libev-4.27.tar.gz) = LVUm/I2k8HLdXHPhj7sWZvXvjteLc7uhLhlc/dgQNE4= > -SIZE (libev-4.27.tar.gz) = 556658 > +SHA256 (libev-4.31.tar.gz) = 7YVdK1IRjjLAwaajK9GMl/nmcRylEfXuEt47nszGblo= > +SIZE (libev-4.31.tar.gz) = 565540 > Index: pkg/PLIST > === > RCS file: /cvs/ports/devel/libev/pkg/PLIST,v > retrieving revision 1.3 > diff -u -p -u -p -r1.3 PLIST > --- pkg/PLIST 23 Apr 2013 18:59:53 - 1.3 > +++ pkg/PLIST 18 Mar 2020 08:57:17 - > @@ -1,7 +1,7 @@ > @comment $OpenBSD: PLIST,v 1.3 2013/04/23 18:59:53 dcoppa Exp $ > include/ev++.h > include/ev.h > -lib/libev.a > +@static-lib lib/libev.a > lib/libev.la > @lib lib/libev.so.${LIBev_VERSION} > @man man/man3/ev.3
Re: [UPDATE] devel/libev (4.27 -> 4.31)
On Wed, Mar 18, 2020 at 10:55 AM Stuart Henderson wrote: > On 2020/03/18 10:02, Alex Naumov wrote: > > this patche updates GNU libev to version 4.31. > > Around 350 ports depend on this, what testing has been done? > > Only ports itself stuff that described on https://www.openbsd.org/faq/ports/testing.html make test /usr/ports/infrastructure/bin/portcheck make port-lib-depends-check No combinations with new packages/ports was tested. > Also note the "p5-EV should probably be kept in sync" comment - the two > ports use the same distfile and most of the changelog entries you show > only relate to p5-EV (the "EV only" ones) ... (actually the word > "probably" should probably be removed from the comment) > > > > Changelog: > > > > 4.31 Fri Dec 20 21:58:29 CET 2019 > > - handle backends with minimum wait time a bit better by not > > waiting in the presence of already-expired timers > > (behaviour reported by Felipe Gasper). > > - new feature: use timerfd to detect timejumps quickly, > > can be disabled with the new EVFLAG_NOTIMERFD loop flag. > > - document EV_USE_SIGNALFD feature macro. > > > > 4.30 (EV only) > > - change non-autoconf test for __kernel_rwf_t by testing > > LINUX_VERSION_CODE, the most direct test I could find. > > - fix a bug in the io_uring backend that polled the wrong > > backend fd, causing it to not work in many cases. > > > > 4.29 (EV only) > > - add io uring autoconf and non-autoconf detection. > > - disable io_uring when some header files are too old. > > > > 4.28 (EV only) > > - linuxaio backend resulted in random memory corruption > > when loop is forked. > > - linuxaio backend might have tried to cancel an iocb > > multiple times (was unable to trigger this). > > - linuxaio backend now employs a generation counter to > > avoid handling spurious events from cancelled requests. > > - io_cancel can return EINTR, deal with it. also, assume > > io_submit also returns EINTR. > > - fix some other minor bugs in linuxaio backend. > > - ev_tstamp type can now be overriden by defining EV_TSTAMP_T. > > - cleanup: replace expect_true/false and noinline by their > > libecb counterparts. > > - move syscall infrastructure from ev_linuxaio.c to ev.c. > > - prepare io_uring integration. > > - tweak ev_floor. > > - epoll, poll, win32 Sleep and other places that use millisecond > > reslution now all try to round up times. > > - solaris port backend didn't compile. > > - abstract time constants into their macros, for more > flexibility. > > > > > > > > Cheers, > > Alex > > > Index: Makefile > > === > > RCS file: /cvs/ports/devel/libev/Makefile,v > > retrieving revision 1.25 > > diff -u -p -u -p -r1.25 Makefile > > --- Makefile 31 Aug 2019 17:21:33 - 1.25 > > +++ Makefile 18 Mar 2020 08:57:17 - > > @@ -3,7 +3,7 @@ > > COMMENT =high-performance event loop library > > > > # p5-EV should probably be kept in sync > > -DISTNAME = libev-4.27 > > +DISTNAME = libev-4.31 > > CATEGORIES = devel > > > > SHARED_LIBS= ev 3.1 # 4.0 > > Index: distinfo > > === > > RCS file: /cvs/ports/devel/libev/distinfo,v > > retrieving revision 1.13 > > diff -u -p -u -p -r1.13 distinfo > > --- distinfo 31 Aug 2019 17:21:33 - 1.13 > > +++ distinfo 18 Mar 2020 08:57:17 - > > @@ -1,2 +1,2 @@ > > -SHA256 (libev-4.27.tar.gz) = > LVUm/I2k8HLdXHPhj7sWZvXvjteLc7uhLhlc/dgQNE4= > > -SIZE (libev-4.27.tar.gz) = 556658 > > +SHA256 (libev-4.31.tar.gz) = > 7YVdK1IRjjLAwaajK9GMl/nmcRylEfXuEt47nszGblo= > > +SIZE (libev-4.31.tar.gz) = 565540 > > Index: pkg/PLIST > > === > > RCS file: /cvs/ports/devel/libev/pkg/PLIST,v > > retrieving revision 1.3 > > diff -u -p -u -p -r1.3 PLIST > > --- pkg/PLIST 23 Apr 2013 18:59:53 - 1.3 > > +++ pkg/PLIST 18 Mar 2020 08:57:17 - > > @@ -1,7 +1,7 @@ > > @comment $OpenBSD: PLIST,v 1.3 2013/04/23 18:59:53 dcoppa Exp $ > > include/ev++.h > > include/ev.h > > -lib/libev.a > > +@static-lib lib/libev.a > > lib/libev.la > > @lib lib/libev.so.${LIBev_VERSION} > > @man man/man3/ev.3 > >