Merge branch 'master' into staging
[jackhill/guix/guix.git] / gnu / packages / libevent.scm
index 2de2970..338b2af 100644 (file)
@@ -3,9 +3,10 @@
 ;;; Copyright © 2015, 2017 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2015 Eric Dvorsak <eric@dvorsak.fr>
 ;;; Copyright © 2016 David Thompson <davet@gnu.org>
-;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
+;;; Copyright © 2017, 2019 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2019 Pierre Neidhardt <mail@ambrevar.xyz>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -32,6 +33,7 @@
   #:use-module (gnu packages autotools)
   #:use-module (gnu packages base)
   #:use-module (gnu packages perl)
+  #:use-module (gnu packages perl-check)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
   #:use-module (gnu packages tls))
 (define-public libevent
   (package
     (name "libevent")
-    (version "2.1.8")
+    (version "2.1.11")
     (source (origin
-             (method url-fetch)
-             (uri (string-append
-                   "https://github.com/libevent/libevent/releases/download/release-"
-                   version "-stable/libevent-" version "-stable.tar.gz"))
-             (sha256
-              (base32
-               "1hhxnxlr0fsdv7bdmzsnhdz16fxf3jg2r6vyljcl3kj6pflcap4n"))
-             (patches (search-patches "libevent-2.1-dns-tests.patch"
-                                      ;; XXX: Try removing this for > 2.1.8.
-                                      ;; https://github.com/libevent/libevent/issues/452
-                                      "libevent-2.1-skip-failing-test.patch"))))
+              (method url-fetch)
+              (uri (string-append
+                    "https://github.com/libevent/libevent/releases/download/release-"
+                    version "-stable/libevent-" version "-stable.tar.gz"))
+              (sha256
+               (base32
+                "0g988zqm45sj1hlhhz4il5z4dpi5dl74hzjwzl4md37a09iaqnx6"))))
     (build-system gnu-build-system)
+    (outputs '("out" "bin"))
     (arguments
-      ;; This skips some of the tests which fail on armhf and aarch64.
+     ;; This skips some of the tests which fail on armhf and aarch64.
      '(#:configure-flags '("--disable-libevent-regress")))
     (inputs
-     `(("python" ,python-2)))           ; for 'event_rpcgen.py'
+     `(("python" ,python-wrapper)))     ;for 'event_rpcgen.py'
     (native-inputs
      `(("which" ,which)))
-    (home-page "http://libevent.org/")
+    (home-page "https://libevent.org/")
     (synopsis "Event notification library")
     (description
      "The libevent API provides a mechanism to execute a callback
@@ -74,31 +73,10 @@ then add or remove events dynamically without having to change the event
 loop.")
     (license bsd-3)))
 
-(define-public libevent-2.0
-  (package
-    (inherit libevent)
-    (version "2.0.22")
-    (source (origin
-              (method url-fetch)
-              (uri (string-append
-                    "https://github.com/libevent/libevent/releases/download/release-"
-                    version "-stable/libevent-" version "-stable.tar.gz"))
-              (sha256
-               (base32
-                "18qz9qfwrkakmazdlwxvjmw8p76g70n3faikwvdwznns1agw9hki"))
-              (patches
-               (search-patches
-                "libevent-dns-tests.patch"
-                "libevent-2.0-CVE-2016-10195.patch"
-                "libevent-2.0-CVE-2016-10196.patch"
-                "libevent-2.0-CVE-2016-10197.patch"
-                "libevent-2.0-evbuffer-add-use-last-with-datap.patch"))))
-    (arguments '())))
-
 (define-public libev
   (package
     (name "libev")
-    (version "4.24")
+    (version "4.25")
     (source (origin
               (method url-fetch)
               (uri (string-append "http://dist.schmorp.de/libev/Attic/libev-"
@@ -106,7 +84,7 @@ loop.")
                                   ".tar.gz"))
               (sha256
                (base32
-                "08gqsza1czx0nf62nkk183jb0946yzjsymaacxbzdgcs8z9r6dcp"))))
+                "1295q0lkkbrlpd5dl5i48bh1rm8mjzh9y795jlvjz3bp4wf7wxbq"))))
     (build-system gnu-build-system)
     (home-page "http://software.schmorp.de/pkg/libev.html")
     (synopsis "Event loop loosely modelled after libevent")
@@ -122,14 +100,14 @@ limited support for fork events.")
 (define-public libuv
   (package
     (name "libuv")
-    (version "1.23.0")
+    (version "1.30.1")
     (source (origin
               (method url-fetch)
               (uri (string-append "https://dist.libuv.org/dist/v" version
                                   "/libuv-v" version ".tar.gz"))
               (sha256
                (base32
-                "09yf7c71n8b80nbsv4lsmq5nqmb0rylhpx3z9jgkv5za9lr6sx6i"))))
+                "12s7ifwgbfxblhv46inqa8c2lsnl8cgmvd37y4a4248xhkx1d0s6"))))
     (build-system gnu-build-system)
     (arguments
      '(;; XXX: Some tests want /dev/tty, attempt to make connections, etc.
@@ -152,30 +130,17 @@ resolution, asynchronous file system operations, and threading primitives.")
     ;; details.  Documentation is CC-BY 4.0 as of 1.12.0; see 'LICENSE-docs'.
     (license (list expat cc-by4.0))))
 
-;; This version is required for Node versions < 10.
-(define-public libuv-1.19
-  (package
-    (inherit libuv)
-    (version "1.19.2")
-    (source (origin
-              (method url-fetch)
-              (uri (string-append "https://dist.libuv.org/dist/v" version
-                                  "/libuv-v" version ".tar.gz"))
-              (sha256
-               (base32
-                "1msk9ac1z69whww88ibrwjqkd1apdla6l77cm2fwy5kigq0z5g3w"))))))
-
 (define-public perl-anyevent
   (package
     (name "perl-anyevent")
-    (version "7.14")
+    (version "7.17")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://cpan/authors/id/M/ML/MLEHMANN/"
                                   "AnyEvent-" version ".tar.gz"))
               (sha256
                (base32
-                "0akxr9y0q9yjkl614x4clbiiayvh5a67y8gmci54plxs4p95i4sk"))))
+                "11drlj8r02czhjgzkb39axnr8zzyp506r043xfmf93q9kilfmgjh"))))
     (build-system perl-build-system)
     (native-inputs
      `(("perl-canary-stability" ,perl-canary-stability)))
@@ -202,14 +167,14 @@ not rely on XS.")
 (define-public perl-ev
   (package
     (name "perl-ev")
-    (version "4.22")
+    (version "4.25")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://cpan/authors/id/M/ML/MLEHMANN/EV-"
                                   version ".tar.gz"))
               (sha256
                (base32
-                "14d9115q8f2ca2q3vbcalm55zqsbx8xjq5aj098laj9f9rrzirra"))
+                "0slw68zxrkfribf6lhggdhpay3mdng0nqxlglkwrk19myblchr9f"))
               (modules '((guix build utils)))
               (snippet
                '(begin
@@ -239,3 +204,32 @@ not rely on XS.")
 full-featured event loop.  It can be used through the @code{AnyEvent} module
 and still be faster than other event loops currently supported in Perl.")
     (license perl-license)))
+
+(define-public perl-rpc-epc-service
+  (package
+    (name "perl-rpc-epc-service")
+    (version "0.0.11")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "mirror://cpan/authors/id/K/KI/KIWANAMI/RPC-EPC-Service-"
+             "v" version ".tar.gz"))
+       (sha256
+        (base32
+         "1qwb284z4ig3xzy21m1b3w8bkb8k6l2ij6cjz93znn2j6qs42pwp"))))
+    (build-system perl-build-system)
+    (native-inputs
+     `(("perl-module-build" ,perl-module-build)
+       ("perl-test-simple" ,perl-test-simple)))
+    (propagated-inputs
+     `(("perl-anyevent" ,perl-anyevent)
+       ("perl-data-sexpression" ,perl-data-sexpression)))
+    (arguments
+     ;; Tests seem to fail because they try to start a server.
+     `(#:tests? #f))
+    (home-page "https://metacpan.org/release/RPC-EPC-Service")
+    (synopsis "Asynchronous remote procedure stack")
+    (description "RPC::EPC::Service enables to connect the other process with
+the S-expression protocol, like the Swank protocol of the SLIME.")
+    (license perl-license)))