[UPDATE] devel/libev (4.27 -> 4.31)

2020-03-18 Thread Alex Naumov
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)

2020-03-18 Thread Stuart Henderson
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)

2020-03-18 Thread Alex Naumov
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
>
>