Received: from localhost (localhost [127.0.0.1]) by mail.netbsd.org (Postfix) with ESMTP id E851F85B2E for ; Tue, 31 Oct 2023 16:29:35 +0000 (UTC) X-Virus-Scanned: amavisd-new at netbsd.org Received: from mail.netbsd.org ([127.0.0.1]) by localhost (mail.netbsd.org [127.0.0.1]) (amavisd-new, port 10025) with ESMTP id OYj4gxM6RDTS for ; Tue, 31 Oct 2023 16:29:34 +0000 (UTC) Received: from cvs.NetBSD.org (ivanova.netbsd.org [199.233.217.197]) by mail.netbsd.org (Postfix) with ESMTP id 8ECF084D44 for ; Tue, 31 Oct 2023 16:29:34 +0000 (UTC) Received: by cvs.NetBSD.org (Postfix, from userid 500) id 8BEBFFADC; Tue, 31 Oct 2023 16:29:34 +0000 (UTC) Content-Transfer-Encoding: 7bit Content-Type: multipart/mixed; boundary="_----------=_1698769774118180" MIME-Version: 1.0 Date: Tue, 31 Oct 2023 16:29:34 +0000 From: "Masatake Daimon" Subject: CVS commit: pkgsrc/devel/hs-unagi-chan To: pkgsrc-changes@NetBSD.org Approved: commit_and_comment Reply-To: pho@netbsd.org X-Mailer: log_accum Message-Id: <20231031162934.8BEBFFADC@cvs.NetBSD.org> This is a multi-part message in MIME format. --_----------=_1698769774118180 Content-Disposition: inline Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="US-ASCII" Module Name: pkgsrc Committed By: pho Date: Tue Oct 31 16:29:34 UTC 2023 Added Files: pkgsrc/devel/hs-unagi-chan: DESCR Makefile PLIST buildlink3.mk distinfo Log Message: devel/hs-unagi-chan: import hs-unagi-chan-0.4.1.4 This library provides implementations of concurrent FIFO queues (for both general boxed and primitive unboxed values) that are fast, perform well under contention, and offer a Chan-like interface. The library may be of limited usefulness outside of x86 architectures where the fetch-and-add instruction is not available. We export several variations of our design; some support additional functionality while others try for lower latency by removing features or making them more restrictive (e.g. in the Unboxed variants). * Unagi: a general-purpose near drop-in replacement for Chan. * Unagi.Unboxed: like Unagi but specialized for primitive types; this may perform better if a queue grows very large. * Unagi.Bounded: a bounded variant with blocking and non-blocking writes, and other functionality where a notion of the queue's capacity is required. * Unagi.NoBlocking: lowest latency implementations for when blocking reads aren't required. * Unagi.NoBlocking.Unboxed: like Unagi.NoBlocking but for primitive types. To generate a diff of this commit: cvs rdiff -u -r0 -r1.1 pkgsrc/devel/hs-unagi-chan/DESCR \ pkgsrc/devel/hs-unagi-chan/Makefile pkgsrc/devel/hs-unagi-chan/PLIST \ pkgsrc/devel/hs-unagi-chan/buildlink3.mk \ pkgsrc/devel/hs-unagi-chan/distinfo Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. --_----------=_1698769774118180 Content-Disposition: inline Content-Length: 8930 Content-Transfer-Encoding: binary Content-Type: text/x-diff; charset=us-ascii Added files: Index: pkgsrc/devel/hs-unagi-chan/DESCR diff -u /dev/null pkgsrc/devel/hs-unagi-chan/DESCR:1.1 --- /dev/null Tue Oct 31 16:29:34 2023 +++ pkgsrc/devel/hs-unagi-chan/DESCR Tue Oct 31 16:29:34 2023 @@ -0,0 +1,19 @@ +This library provides implementations of concurrent FIFO queues (for both +general boxed and primitive unboxed values) that are fast, perform well +under contention, and offer a Chan-like interface. The library may be of +limited usefulness outside of x86 architectures where the fetch-and-add +instruction is not available. + +We export several variations of our design; some support additional +functionality while others try for lower latency by removing features or +making them more restrictive (e.g. in the Unboxed variants). + +* Unagi: a general-purpose near drop-in replacement for Chan. +* Unagi.Unboxed: like Unagi but specialized for primitive types; this may + perform better if a queue grows very large. +* Unagi.Bounded: a bounded variant with blocking and non-blocking writes, + and other functionality where a notion of the queue's capacity is + required. +* Unagi.NoBlocking: lowest latency implementations for when blocking reads + aren't required. +* Unagi.NoBlocking.Unboxed: like Unagi.NoBlocking but for primitive types. Index: pkgsrc/devel/hs-unagi-chan/Makefile diff -u /dev/null pkgsrc/devel/hs-unagi-chan/Makefile:1.1 --- /dev/null Tue Oct 31 16:29:34 2023 +++ pkgsrc/devel/hs-unagi-chan/Makefile Tue Oct 31 16:29:34 2023 @@ -0,0 +1,13 @@ +# $NetBSD: Makefile,v 1.1 2023/10/31 16:29:34 pho Exp $ + +DISTNAME= unagi-chan-0.4.1.4 +CATEGORIES= devel + +MAINTAINER= pkgsrc-users@NetBSD.org +COMMENT= Fast concurrent queues with a Chan-like API, and more +LICENSE= modified-bsd + +.include "../../devel/hs-atomic-primops/buildlink3.mk" +.include "../../devel/hs-primitive/buildlink3.mk" +.include "../../mk/haskell.mk" +.include "../../mk/bsd.pkg.mk" Index: pkgsrc/devel/hs-unagi-chan/PLIST diff -u /dev/null pkgsrc/devel/hs-unagi-chan/PLIST:1.1 --- /dev/null Tue Oct 31 16:29:34 2023 +++ pkgsrc/devel/hs-unagi-chan/PLIST Tue Oct 31 16:29:34 2023 @@ -0,0 +1,64 @@ +@comment $NetBSD: PLIST,v 1.1 2023/10/31 16:29:34 pho Exp $ +lib/unagi-chan-${PKGVERSION}/${HS_VERSION}/package-description +lib/unagi-chan-${PKGVERSION}/${HS_VERSION}/package-id +${PLIST.shlibs}lib/${HS_PLATFORM}/libHS${HS_PKGID}-${HS_VER}.so +${PLIST.shlibs}lib/${HS_PLATFORM}/${HS_PKGID}/Control/Concurrent/Chan/Unagi.dyn_hi +lib/${HS_PLATFORM}/${HS_PKGID}/Control/Concurrent/Chan/Unagi.hi +${PLIST.prof}lib/${HS_PLATFORM}/${HS_PKGID}/Control/Concurrent/Chan/Unagi.p_hi +${PLIST.shlibs}lib/${HS_PLATFORM}/${HS_PKGID}/Control/Concurrent/Chan/Unagi/Bounded.dyn_hi +lib/${HS_PLATFORM}/${HS_PKGID}/Control/Concurrent/Chan/Unagi/Bounded.hi +${PLIST.prof}lib/${HS_PLATFORM}/${HS_PKGID}/Control/Concurrent/Chan/Unagi/Bounded.p_hi +${PLIST.shlibs}lib/${HS_PLATFORM}/${HS_PKGID}/Control/Concurrent/Chan/Unagi/Bounded/Internal.dyn_hi +lib/${HS_PLATFORM}/${HS_PKGID}/Control/Concurrent/Chan/Unagi/Bounded/Internal.hi +${PLIST.prof}lib/${HS_PLATFORM}/${HS_PKGID}/Control/Concurrent/Chan/Unagi/Bounded/Internal.p_hi +${PLIST.shlibs}lib/${HS_PLATFORM}/${HS_PKGID}/Control/Concurrent/Chan/Unagi/Constants.dyn_hi +lib/${HS_PLATFORM}/${HS_PKGID}/Control/Concurrent/Chan/Unagi/Constants.hi +${PLIST.prof}lib/${HS_PLATFORM}/${HS_PKGID}/Control/Concurrent/Chan/Unagi/Constants.p_hi +${PLIST.shlibs}lib/${HS_PLATFORM}/${HS_PKGID}/Control/Concurrent/Chan/Unagi/Internal.dyn_hi +lib/${HS_PLATFORM}/${HS_PKGID}/Control/Concurrent/Chan/Unagi/Internal.hi +${PLIST.prof}lib/${HS_PLATFORM}/${HS_PKGID}/Control/Concurrent/Chan/Unagi/Internal.p_hi +${PLIST.shlibs}lib/${HS_PLATFORM}/${HS_PKGID}/Control/Concurrent/Chan/Unagi/NoBlocking.dyn_hi +lib/${HS_PLATFORM}/${HS_PKGID}/Control/Concurrent/Chan/Unagi/NoBlocking.hi +${PLIST.prof}lib/${HS_PLATFORM}/${HS_PKGID}/Control/Concurrent/Chan/Unagi/NoBlocking.p_hi +${PLIST.shlibs}lib/${HS_PLATFORM}/${HS_PKGID}/Control/Concurrent/Chan/Unagi/NoBlocking/Internal.dyn_hi +lib/${HS_PLATFORM}/${HS_PKGID}/Control/Concurrent/Chan/Unagi/NoBlocking/Internal.hi +${PLIST.prof}lib/${HS_PLATFORM}/${HS_PKGID}/Control/Concurrent/Chan/Unagi/NoBlocking/Internal.p_hi +${PLIST.shlibs}lib/${HS_PLATFORM}/${HS_PKGID}/Control/Concurrent/Chan/Unagi/NoBlocking/Types.dyn_hi +lib/${HS_PLATFORM}/${HS_PKGID}/Control/Concurrent/Chan/Unagi/NoBlocking/Types.hi +${PLIST.prof}lib/${HS_PLATFORM}/${HS_PKGID}/Control/Concurrent/Chan/Unagi/NoBlocking/Types.p_hi +${PLIST.shlibs}lib/${HS_PLATFORM}/${HS_PKGID}/Control/Concurrent/Chan/Unagi/NoBlocking/Unboxed.dyn_hi +lib/${HS_PLATFORM}/${HS_PKGID}/Control/Concurrent/Chan/Unagi/NoBlocking/Unboxed.hi +${PLIST.prof}lib/${HS_PLATFORM}/${HS_PKGID}/Control/Concurrent/Chan/Unagi/NoBlocking/Unboxed.p_hi +${PLIST.shlibs}lib/${HS_PLATFORM}/${HS_PKGID}/Control/Concurrent/Chan/Unagi/NoBlocking/Unboxed/Internal.dyn_hi +lib/${HS_PLATFORM}/${HS_PKGID}/Control/Concurrent/Chan/Unagi/NoBlocking/Unboxed/Internal.hi +${PLIST.prof}lib/${HS_PLATFORM}/${HS_PKGID}/Control/Concurrent/Chan/Unagi/NoBlocking/Unboxed/Internal.p_hi +${PLIST.shlibs}lib/${HS_PLATFORM}/${HS_PKGID}/Control/Concurrent/Chan/Unagi/Unboxed.dyn_hi +lib/${HS_PLATFORM}/${HS_PKGID}/Control/Concurrent/Chan/Unagi/Unboxed.hi +${PLIST.prof}lib/${HS_PLATFORM}/${HS_PKGID}/Control/Concurrent/Chan/Unagi/Unboxed.p_hi +${PLIST.shlibs}lib/${HS_PLATFORM}/${HS_PKGID}/Control/Concurrent/Chan/Unagi/Unboxed/Internal.dyn_hi +lib/${HS_PLATFORM}/${HS_PKGID}/Control/Concurrent/Chan/Unagi/Unboxed/Internal.hi +${PLIST.prof}lib/${HS_PLATFORM}/${HS_PKGID}/Control/Concurrent/Chan/Unagi/Unboxed/Internal.p_hi +${PLIST.shlibs}lib/${HS_PLATFORM}/${HS_PKGID}/Data/Atomics/Counter/Fat.dyn_hi +lib/${HS_PLATFORM}/${HS_PKGID}/Data/Atomics/Counter/Fat.hi +${PLIST.prof}lib/${HS_PLATFORM}/${HS_PKGID}/Data/Atomics/Counter/Fat.p_hi +${PLIST.shlibs}lib/${HS_PLATFORM}/${HS_PKGID}/Utilities.dyn_hi +lib/${HS_PLATFORM}/${HS_PKGID}/Utilities.hi +${PLIST.prof}lib/${HS_PLATFORM}/${HS_PKGID}/Utilities.p_hi +lib/${HS_PLATFORM}/${HS_PKGID}/libHS${HS_PKGID}.a +${PLIST.prof}lib/${HS_PLATFORM}/${HS_PKGID}/libHS${HS_PKGID}_p.a +share/doc/${HS_PLATFORM}/unagi-chan-${PKGVERSION}/LICENSE +${PLIST.doc}share/doc/${HS_PLATFORM}/unagi-chan-${PKGVERSION}/html/Control-Concurrent-Chan-Unagi-Bounded.html +${PLIST.doc}share/doc/${HS_PLATFORM}/unagi-chan-${PKGVERSION}/html/Control-Concurrent-Chan-Unagi-NoBlocking-Unboxed.html +${PLIST.doc}share/doc/${HS_PLATFORM}/unagi-chan-${PKGVERSION}/html/Control-Concurrent-Chan-Unagi-NoBlocking.html +${PLIST.doc}share/doc/${HS_PLATFORM}/unagi-chan-${PKGVERSION}/html/Control-Concurrent-Chan-Unagi-Unboxed.html +${PLIST.doc}share/doc/${HS_PLATFORM}/unagi-chan-${PKGVERSION}/html/Control-Concurrent-Chan-Unagi.html +${PLIST.doc}share/doc/${HS_PLATFORM}/unagi-chan-${PKGVERSION}/html/doc-index.html +${PLIST.doc}share/doc/${HS_PLATFORM}/unagi-chan-${PKGVERSION}/html/doc-index.json +${PLIST.doc}share/doc/${HS_PLATFORM}/unagi-chan-${PKGVERSION}/html/haddock-bundle.min.js +${PLIST.doc}share/doc/${HS_PLATFORM}/unagi-chan-${PKGVERSION}/html/index.html +${PLIST.doc}share/doc/${HS_PLATFORM}/unagi-chan-${PKGVERSION}/html/linuwial.css +${PLIST.doc}share/doc/${HS_PLATFORM}/unagi-chan-${PKGVERSION}/html/meta.json +${PLIST.doc}share/doc/${HS_PLATFORM}/unagi-chan-${PKGVERSION}/html/quick-jump.css +${PLIST.doc}share/doc/${HS_PLATFORM}/unagi-chan-${PKGVERSION}/html/quick-jump.min.js +${PLIST.doc}share/doc/${HS_PLATFORM}/unagi-chan-${PKGVERSION}/html/synopsis.png +${PLIST.doc}share/doc/${HS_PLATFORM}/unagi-chan-${PKGVERSION}/html/unagi-chan.haddock Index: pkgsrc/devel/hs-unagi-chan/buildlink3.mk diff -u /dev/null pkgsrc/devel/hs-unagi-chan/buildlink3.mk:1.1 --- /dev/null Tue Oct 31 16:29:34 2023 +++ pkgsrc/devel/hs-unagi-chan/buildlink3.mk Tue Oct 31 16:29:34 2023 @@ -0,0 +1,16 @@ +# $NetBSD: buildlink3.mk,v 1.1 2023/10/31 16:29:34 pho Exp $ + +BUILDLINK_TREE+= hs-unagi-chan + +.if !defined(HS_UNAGI_CHAN_BUILDLINK3_MK) +HS_UNAGI_CHAN_BUILDLINK3_MK:= + +BUILDLINK_API_DEPENDS.hs-unagi-chan+= hs-unagi-chan>=0.4.1 +BUILDLINK_ABI_DEPENDS.hs-unagi-chan+= hs-unagi-chan>=0.4.1.4 +BUILDLINK_PKGSRCDIR.hs-unagi-chan?= ../../devel/hs-unagi-chan + +.include "../../devel/hs-atomic-primops/buildlink3.mk" +.include "../../devel/hs-primitive/buildlink3.mk" +.endif # HS_UNAGI_CHAN_BUILDLINK3_MK + +BUILDLINK_TREE+= -hs-unagi-chan Index: pkgsrc/devel/hs-unagi-chan/distinfo diff -u /dev/null pkgsrc/devel/hs-unagi-chan/distinfo:1.1 --- /dev/null Tue Oct 31 16:29:34 2023 +++ pkgsrc/devel/hs-unagi-chan/distinfo Tue Oct 31 16:29:34 2023 @@ -0,0 +1,5 @@ +$NetBSD: distinfo,v 1.1 2023/10/31 16:29:34 pho Exp $ + +BLAKE2s (unagi-chan-0.4.1.4.tar.gz) = d74e85acfd665702908fbc02f2e43b86b07caf3034970acf0898c37cc3b04fdb +SHA512 (unagi-chan-0.4.1.4.tar.gz) = 2b4e23cbb0706dbcf4aeb820901b4b1c357a136472ff065c42dd58f6cfbb3c8e87b5503fe285b9c3a557791f959b82091138e8e137b88496fb92d2562506a3a3 +Size (unagi-chan-0.4.1.4.tar.gz) = 52549 bytes --_----------=_1698769774118180--