Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 19 Jul 2023 21:35:46 GMT
From:      Yuri Victorovich <yuri@FreeBSD.org>
To:        ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org
Subject:   git: 183ed05587bf - main - devel/outcome: New port: C++14 library for reporting and handling function failures
Message-ID:  <202307192135.36JLZkYR032197@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch main has been updated by yuri:

URL: https://cgit.FreeBSD.org/ports/commit/?id=183ed05587bf36029484f3ad28c8c188071f8ebf

commit 183ed05587bf36029484f3ad28c8c188071f8ebf
Author:     Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2023-07-18 14:02:44 +0000
Commit:     Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2023-07-18 14:02:44 +0000

    devel/outcome: New port: C++14 library for reporting and handling function failures
---
 devel/Makefile          |  1 +
 devel/outcome/Makefile  | 35 ++++++++++++++++++++++++
 devel/outcome/distinfo  |  5 ++++
 devel/outcome/pkg-descr | 15 ++++++++++
 devel/outcome/pkg-plist | 73 +++++++++++++++++++++++++++++++++++++++++++++++++
 5 files changed, 129 insertions(+)

diff --git a/devel/Makefile b/devel/Makefile
index 2711c4c2d535..8db949a1dd8e 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -1718,6 +1718,7 @@
     SUBDIR += ossp-val
     SUBDIR += ossp-var
     SUBDIR += ossp-xds
+    SUBDIR += outcome
     SUBDIR += p4
     SUBDIR += p4.el
     SUBDIR += p4api
diff --git a/devel/outcome/Makefile b/devel/outcome/Makefile
new file mode 100644
index 000000000000..0130caeda82d
--- /dev/null
+++ b/devel/outcome/Makefile
@@ -0,0 +1,35 @@
+PORTNAME=	outcome
+DISTVERSIONPREFIX=	v
+DISTVERSION=	2.2.4-20230715
+CATEGORIES=	devel
+
+MAINTAINER=	yuri@FreeBSD.org
+COMMENT=	C++14 library for reporting and handling function failures
+WWW=		https://ned14.github.io/outcome/
+
+LICENSE=	APACHE20
+LICENSE_FILE=	${WRKSRC}/Licence.txt
+
+BUILD_DEPENDS=	${LOCALBASE}/include/quickcpplib/config.hpp:devel/quickcpplib
+RUN_DEPENDS=	${LOCALBASE}/include/quickcpplib/config.hpp:devel/quickcpplib
+
+USES=		cmake:testing compiler:c++14-lang
+
+USE_GITHUB=	yes
+GH_ACCOUNT=	ned14
+GH_TAGNAME=	0bedf67
+GH_TUPLE=	ned14:status-code:6827965:status_code/include/outcome/experimental/status-code
+
+CMAKE_TESTING_ON=	OUTCOME_ENABLE_DEPENDENCY_SMOKE_TEST
+CMAKE_ARGS=	-Dquickcpplib_DIR=${LOCALBASE}/lib/cmake/quickcpplib
+
+NO_BUILD=	yes
+NO_ARCH=	yes
+
+post-patch: # remove the test folter until the problems are fixed by the upstream
+	# tests have problems:
+	# - they are unconditionally built, see https://github.com/ned14/outcome/issues/285
+	# - they fail to compile, see https://github.com/ned14/outcome/issues/286
+	@${RM} -r ${WRKSRC}/test
+
+.include <bsd.port.mk>
diff --git a/devel/outcome/distinfo b/devel/outcome/distinfo
new file mode 100644
index 000000000000..32aff721f861
--- /dev/null
+++ b/devel/outcome/distinfo
@@ -0,0 +1,5 @@
+TIMESTAMP = 1689800649
+SHA256 (ned14-outcome-v2.2.4-20230715-0bedf67_GH0.tar.gz) = bae929536c597a2fe46eac95a11cda3f8b945bbd1a2ec488423884d6c6ae9578
+SIZE (ned14-outcome-v2.2.4-20230715-0bedf67_GH0.tar.gz) = 2461257
+SHA256 (ned14-status-code-6827965_GH0.tar.gz) = 4377c3c3f2200ff2f2e786a7458137ec5575853fe9c8e55f699d97265a1f3276
+SIZE (ned14-status-code-6827965_GH0.tar.gz) = 166926
diff --git a/devel/outcome/pkg-descr b/devel/outcome/pkg-descr
new file mode 100644
index 000000000000..169e3c669d4f
--- /dev/null
+++ b/devel/outcome/pkg-descr
@@ -0,0 +1,15 @@
+Outcome is a C++14 library for reporting and handling function failures.
+It can be used as a substitute for, or a complement to, the exception handling
+mechanism.
+
+One use case is for contexts where using C++ exception handling is unsuitable
+for different reasons:
+* The high relative cost of throwing and catching a C++ exception.
+* Making some or all control paths explicitly detailed to aid code correctness
+  auditing, as opposed to having hidden control paths caused by exceptions
+  potentially thrown from any place.
+* Company policy to compile with exceptions disabled.
+* Maintaining a code base that was never designed with exception-safety in mind.
+* Parts of the programs/frameworks that themselves implement exception handling
+  and cannot afford to use exceptions, like propagating failure reports across
+  threads, tasks, fibers.
diff --git a/devel/outcome/pkg-plist b/devel/outcome/pkg-plist
new file mode 100644
index 000000000000..5abba5288b3c
--- /dev/null
+++ b/devel/outcome/pkg-plist
@@ -0,0 +1,73 @@
+include/outcome.hpp
+include/outcome/bad_access.hpp
+include/outcome/basic_outcome.hpp
+include/outcome/basic_result.hpp
+include/outcome/boost_outcome.hpp
+include/outcome/boost_result.hpp
+include/outcome/config.hpp
+include/outcome/convert.hpp
+include/outcome/coroutine_support.hpp
+include/outcome/detail/basic_outcome_exception_observers.hpp
+include/outcome/detail/basic_outcome_exception_observers_impl.hpp
+include/outcome/detail/basic_outcome_failure_observers.hpp
+include/outcome/detail/basic_result_error_observers.hpp
+include/outcome/detail/basic_result_final.hpp
+include/outcome/detail/basic_result_storage.hpp
+include/outcome/detail/basic_result_value_observers.hpp
+include/outcome/detail/coroutine_support.ipp
+include/outcome/detail/revision.hpp
+include/outcome/detail/trait_std_error_code.hpp
+include/outcome/detail/trait_std_exception.hpp
+include/outcome/detail/value_storage.hpp
+include/outcome/detail/version.hpp
+include/outcome/experimental/coroutine_support.hpp
+include/outcome/experimental/result.h
+include/outcome/experimental/status-code/include/status-code/boost_error_code.hpp
+include/outcome/experimental/status-code/include/status-code/com_code.hpp
+include/outcome/experimental/status-code/include/status-code/config.hpp
+include/outcome/experimental/status-code/include/status-code/detail/nt_code_to_generic_code.ipp
+include/outcome/experimental/status-code/include/status-code/detail/nt_code_to_win32_code.ipp
+include/outcome/experimental/status-code/include/status-code/detail/win32_code_to_generic_code.ipp
+include/outcome/experimental/status-code/include/status-code/error.hpp
+include/outcome/experimental/status-code/include/status-code/errored_status_code.hpp
+include/outcome/experimental/status-code/include/status-code/generic_code.hpp
+include/outcome/experimental/status-code/include/status-code/getaddrinfo_code.hpp
+include/outcome/experimental/status-code/include/status-code/http_status_code.hpp
+include/outcome/experimental/status-code/include/status-code/iostream_support.hpp
+include/outcome/experimental/status-code/include/status-code/nested_status_code.hpp
+include/outcome/experimental/status-code/include/status-code/nt_code.hpp
+include/outcome/experimental/status-code/include/status-code/posix_code.hpp
+include/outcome/experimental/status-code/include/status-code/quick_status_code_from_enum.hpp
+include/outcome/experimental/status-code/include/status-code/result.hpp
+include/outcome/experimental/status-code/include/status-code/status_code.hpp
+include/outcome/experimental/status-code/include/status-code/status_code_domain.hpp
+include/outcome/experimental/status-code/include/status-code/status_error.hpp
+include/outcome/experimental/status-code/include/status-code/std_error_code.hpp
+include/outcome/experimental/status-code/include/status-code/system_code.hpp
+include/outcome/experimental/status-code/include/status-code/system_code_from_exception.hpp
+include/outcome/experimental/status-code/include/status-code/system_error2.hpp
+include/outcome/experimental/status-code/include/status-code/win32_code.hpp
+include/outcome/experimental/status-code/single-header/system_error2.hpp
+include/outcome/experimental/status_outcome.hpp
+include/outcome/experimental/status_result.hpp
+include/outcome/iostream_support.hpp
+include/outcome/outcome.hpp
+include/outcome/outcome.natvis
+include/outcome/policy/all_narrow.hpp
+include/outcome/policy/base.hpp
+include/outcome/policy/fail_to_compile_observers.hpp
+include/outcome/policy/outcome_error_code_throw_as_system_error.hpp
+include/outcome/policy/outcome_exception_ptr_rethrow.hpp
+include/outcome/policy/result_error_code_throw_as_system_error.hpp
+include/outcome/policy/result_exception_ptr_rethrow.hpp
+include/outcome/policy/terminate.hpp
+include/outcome/policy/throw_bad_result_access.hpp
+include/outcome/result.hpp
+include/outcome/std_outcome.hpp
+include/outcome/std_result.hpp
+include/outcome/success_failure.hpp
+include/outcome/trait.hpp
+include/outcome/try.hpp
+include/outcome/utils.hpp
+lib/cmake/outcome/outcomeConfig.cmake
+lib/cmake/outcome/outcomeExports.cmake



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202307192135.36JLZkYR032197>