git: 7203a0163a45 - main - devel/p5-Future-AsyncAwait: Add p5-Future-AsyncAwait 0.62

From: Po-Chuan Hsieh <sunpoet_at_FreeBSD.org>
Date: Mon, 30 Jan 2023 13:04:32 UTC
The branch main has been updated by sunpoet:

URL: https://cgit.FreeBSD.org/ports/commit/?id=7203a0163a456cdffc0477cc5c4e411c84562be8

commit 7203a0163a456cdffc0477cc5c4e411c84562be8
Author:     Po-Chuan Hsieh <sunpoet@FreeBSD.org>
AuthorDate: 2023-01-30 12:20:51 +0000
Commit:     Po-Chuan Hsieh <sunpoet@FreeBSD.org>
CommitDate: 2023-01-30 12:58:44 +0000

    devel/p5-Future-AsyncAwait: Add p5-Future-AsyncAwait 0.62
    
    Future::AsyncAwait provides syntax for deferring and resuming subroutines while
    waiting for Futures to complete. This syntax aims to make code that performs
    asynchronous operations using futures look neater and more expressive than
    simply using then chaining and other techniques on the futures themselves. It is
    also a similar syntax used by a number of other languages; notably C# 5,
    EcmaScript 6, Python 3, Dart, Rust, C++20.
    
    This module is still under active development. While it now seems relatively
    stable enough for most use-cases and has received a lot of "battle-testing" in a
    wide variety of scenarios, there may still be the occasional case of memory leak
    left in it, especially if still-pending futures are abandoned.
    
    The new syntax takes the form of two new keywords, async and await.
---
 devel/Makefile                       |  1 +
 devel/p5-Future-AsyncAwait/Makefile  | 29 +++++++++++++++++++++++++++++
 devel/p5-Future-AsyncAwait/distinfo  |  3 +++
 devel/p5-Future-AsyncAwait/pkg-descr | 13 +++++++++++++
 devel/p5-Future-AsyncAwait/pkg-plist | 10 ++++++++++
 5 files changed, 56 insertions(+)

diff --git a/devel/Makefile b/devel/Makefile
index da059559ad94..8f69bfceba65 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -2530,6 +2530,7 @@
     SUBDIR += p5-Function-Fallback-CoreOrPP
     SUBDIR += p5-Function-Parameters
     SUBDIR += p5-Future
+    SUBDIR += p5-Future-AsyncAwait
     SUBDIR += p5-Future-IO
     SUBDIR += p5-Gearman
     SUBDIR += p5-Gearman-Client-Async
diff --git a/devel/p5-Future-AsyncAwait/Makefile b/devel/p5-Future-AsyncAwait/Makefile
new file mode 100644
index 000000000000..f13fafa46764
--- /dev/null
+++ b/devel/p5-Future-AsyncAwait/Makefile
@@ -0,0 +1,29 @@
+PORTNAME=	Future-AsyncAwait
+PORTVERSION=	0.62
+CATEGORIES=	devel perl5
+MASTER_SITES=	CPAN
+MASTER_SITE_SUBDIR=	CPAN:PEVANS
+PKGNAMEPREFIX=	p5-
+
+MAINTAINER=	sunpoet@FreeBSD.org
+COMMENT=	Deferred subroutine syntax for futures
+WWW=		https://metacpan.org/dist/Future-AsyncAwait
+
+LICENSE=	ART10 GPLv1+
+LICENSE_COMB=	dual
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+BUILD_DEPENDS=	${RUN_DEPENDS}
+RUN_DEPENDS=	p5-Future>=0.48:devel/p5-Future \
+		p5-XS-Parse-Keyword>=0.13:devel/p5-XS-Parse-Keyword \
+		p5-XS-Parse-Sublike>=0.14:devel/p5-XS-Parse-Sublike
+TEST_DEPENDS=	p5-Test-Fatal>=0:devel/p5-Test-Fatal \
+		p5-Test-Refcount>=0.09:devel/p5-Test-Refcount
+
+USES=		perl5
+USE_PERL5=	modbuild
+
+post-install:
+	${STRIP_CMD} ${STAGEDIR}${PREFIX}/${SITE_ARCH_REL}/auto/Future/AsyncAwait/AsyncAwait.so
+
+.include <bsd.port.mk>
diff --git a/devel/p5-Future-AsyncAwait/distinfo b/devel/p5-Future-AsyncAwait/distinfo
new file mode 100644
index 000000000000..ca98da0f9fd7
--- /dev/null
+++ b/devel/p5-Future-AsyncAwait/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1674588038
+SHA256 (Future-AsyncAwait-0.62.tar.gz) = df7044083a561813d8dd0b848ac3ccb24ca57fc3f4c5d1126f929e3b8b1a9385
+SIZE (Future-AsyncAwait-0.62.tar.gz) = 87291
diff --git a/devel/p5-Future-AsyncAwait/pkg-descr b/devel/p5-Future-AsyncAwait/pkg-descr
new file mode 100644
index 000000000000..8b3702aec7eb
--- /dev/null
+++ b/devel/p5-Future-AsyncAwait/pkg-descr
@@ -0,0 +1,13 @@
+Future::AsyncAwait provides syntax for deferring and resuming subroutines while
+waiting for Futures to complete. This syntax aims to make code that performs
+asynchronous operations using futures look neater and more expressive than
+simply using then chaining and other techniques on the futures themselves. It is
+also a similar syntax used by a number of other languages; notably C# 5,
+EcmaScript 6, Python 3, Dart, Rust, C++20.
+
+This module is still under active development. While it now seems relatively
+stable enough for most use-cases and has received a lot of "battle-testing" in a
+wide variety of scenarios, there may still be the occasional case of memory leak
+left in it, especially if still-pending futures are abandoned.
+
+The new syntax takes the form of two new keywords, async and await.
diff --git a/devel/p5-Future-AsyncAwait/pkg-plist b/devel/p5-Future-AsyncAwait/pkg-plist
new file mode 100644
index 000000000000..695d579a5c39
--- /dev/null
+++ b/devel/p5-Future-AsyncAwait/pkg-plist
@@ -0,0 +1,10 @@
+%%SITE_ARCH%%/Future/AsyncAwait.pm
+%%SITE_ARCH%%/Future/AsyncAwait/Awaitable.pm
+%%SITE_ARCH%%/Future/AsyncAwait/ExtensionBuilder.pm
+%%SITE_ARCH%%/Future/AsyncAwait/ExtensionBuilder_data.pm
+%%SITE_ARCH%%/Test/Future/AsyncAwait/Awaitable.pm
+%%SITE_ARCH%%/auto/Future/AsyncAwait/AsyncAwait.so
+%%PERL5_MAN3%%/Future::AsyncAwait.3.gz
+%%PERL5_MAN3%%/Future::AsyncAwait::Awaitable.3.gz
+%%PERL5_MAN3%%/Future::AsyncAwait::ExtensionBuilder.3.gz
+%%PERL5_MAN3%%/Test::Future::AsyncAwait::Awaitable.3.gz