From nobody Sun Nov 01 02:25:26 2026 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4jHJbB2yXdz6vdVs for ; Sun, 01 Nov 2026 02:25:26 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 4jHJbB1NjQz4RR2 for ; Sun, 01 Nov 2026 02:25:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1793499926; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=b6wqH/fXsQ2bU/OYatEL1KuqcwIxlV4YFPD62Oh/GoM=; b=Zkj2AVYfXMouxjb2J9/50vxvznACwRcfgNU81U+EMn+FJS1deaI37ytOl/obatGfbOwjLp GrffjZrAlisMs/DuN5TUE9Op4jWPfl5L/8xEEkN5w4bGlf1mONeOegWgmTFHsfMTW/lgv0 58VUvbSS8pfi7/NITXudIC3j1cmuhuKZgsu89eBlpW208fHjiTp29DtUEoHInwURrmWwPL ZEL9MfRNL0FJp+53qAS0ETdhb/9ZELYZUgdo/nx0oZjMUBv4GulETtpKmoF+muJLjDUl+p 7Xx2PLEKegYqHyeIU9x2C+1nAhUMC44pqMQ9G6oaW6o6Cgo7lmreQ+wmRTsY+Q== ARC-Seal: i=1; a=rsa-sha256; d=freebsd.org; s=dkim; cv=none; t=1793499926; b=poKeFpVedCUfKTAKaE7QMiuVf9UjuLOuG+Udt78qItmXHA5qtpG1ONWxYu1tQKmymi1OIw 3bMGUr3bQuUT9r5+QaKI/3I9OoNrzv/malYVK3fgu0/sIC2wKN71DGpn9zvax2L2oVy7M2 zZ2O3NXpwewORo3a7kx99IRnunk5pE6soyqlDXV1U3kzRxVOQXZlh6kCau2xVyIT9Fvx+t Di2czxOV057+Ykj7AeqOIWR+gSvmg74KaJexTtxIjMc685ll8b/f8c8oE6OsJfJefLkIJJ 7/vhwgOMdgHXshqJUL8hqIGXue2hKNCjE84pt7egarNyz8uhDSnHEwaEHywz/w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1793499926; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=b6wqH/fXsQ2bU/OYatEL1KuqcwIxlV4YFPD62Oh/GoM=; b=HRVsjQTGxoo92RZAlqqdVrJETfl/ohlKCUzEEtjmtwokQUgSwx6Fds47+kbuA1K4T4mabW o1Sx5zDT8ohPl9MS6VKQlJIEz+pzRT+8AN9pbXaCliqXV9dIeTZ5LPIWiMEcy8VLVJd/1m KK7N+CcZCZ0RWPVZYAGLYS7cUl+1nj+stz958DtLgTeghSw7SFpBUwqbV4ESryeBiPAEOs 6VihhWldK1H9M3jdbGUbb3YHZyvflCEA4ITXotGccCV2nGWGcW81qVROGS0DoiSZE8YN6D nGttPGmaWNXYHhMWOHn4obPoeeyHmQlqqa4LL40tMZcCN7wk06haETxjYqoIRA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4jHJbB138JzgVP for ; Sun, 01 Nov 2026 02:25:26 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 32ff7 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sun, 01 Nov 2026 02:25:26 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Enji Cooper Subject: git: a0691523367a - stable/14 - contrib/atf: upgrade to 0.26 List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org List-Id: Commits to the stable branches of the FreeBSD src repository List-Post: List-Help: List-Subscribe: List-Unsubscribe: List-Owner: Precedence: list MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ngie X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: a0691523367ae1d5d62bc03beb6ac530f376ce7b Auto-Submitted: auto-generated Date: Sun, 01 Nov 2026 02:25:26 +0000 Message-Id: <6ae6a316.32ff7.1f3d2e8a@gitrepo.freebsd.org> The branch stable/14 has been updated by ngie: URL: https://cgit.FreeBSD.org/src/commit/?id=a0691523367ae1d5d62bc03beb6ac530f376ce7b commit a0691523367ae1d5d62bc03beb6ac530f376ce7b Author: Enji Cooper AuthorDate: 2026-09-22 15:23:32 +0000 Commit: Enji Cooper CommitDate: 2026-11-01 02:24:21 +0000 contrib/atf: upgrade to 0.26 This new version gets contrib/atf in line with the published version of the package up on [GitHub][github]. Please note that this release is a major update: it contains several bugfixes and feature enhancements. Most were already present in the FreeBSD src repo, but there were a large number of changes made in addition to what was already present. MFC after: 1 month Merge commit '9c78088348bcf1059d82a62bb57a0746309d4312' Conflicts: ObsoleteFiles.inc contrib/atf/.cirrus.yml contrib/atf/Makefile.am contrib/atf/Makefile.in contrib/atf/aclocal.m4 contrib/atf/admin/ar-lib contrib/atf/admin/check-style-common.awk contrib/atf/admin/check-style.sh contrib/atf/admin/compile contrib/atf/admin/config.guess contrib/atf/admin/config.sub contrib/atf/admin/depcomp contrib/atf/admin/install-sh contrib/atf/admin/ltmain.sh contrib/atf/admin/missing contrib/atf/atf-c++/Makefile.am.inc contrib/atf/atf-c++/atf-c++.3 contrib/atf/atf-c++/atf-c++.pc.in contrib/atf/atf-c++/check.cpp contrib/atf/atf-c++/check.hpp contrib/atf/atf-c++/detail/Makefile.am.inc contrib/atf/atf-c++/detail/process_test.cpp contrib/atf/atf-c/Makefile.am.inc contrib/atf/atf-c/atf-c.3 contrib/atf/atf-c/atf-c.pc.in contrib/atf/atf-c/detail/Makefile.am.inc contrib/atf/atf-c/detail/fs.c contrib/atf/atf-c/detail/fs_test.c contrib/atf/atf-c/detail/process_test.c contrib/atf/atf-c/tc.c contrib/atf/atf-c/tc.h contrib/atf/atf-sh/Makefile.am.inc contrib/atf/atf-sh/atf-check.cpp contrib/atf/atf-sh/atf-check_test.sh contrib/atf/bootstrap/Makefile.am.inc contrib/atf/bootstrap/package.m4 contrib/atf/bootstrap/testsuite contrib/atf/config.h contrib/atf/configure contrib/atf/configure.ac contrib/atf/doc/Makefile.am.inc contrib/atf/doc/atf-test-case.7 contrib/atf/m4/developer-mode.m4 contrib/atf/m4/libtool.m4 contrib/atf/m4/ltoptions.m4 contrib/atf/m4/ltsugar.m4 contrib/atf/m4/ltversion.m4 contrib/atf/m4/lt~obsolete.m4 contrib/atf/m4/module-defs.m4 contrib/atf/test-programs/Makefile.am.inc share/doc/atf/Makefile share/man/man4/Makefile share/man/man7/Makefile [github]: https://github.com/freebsd/atf (cherry picked from commit 952231086100bed7130212b5425e44ffd732913b) --- ObsoleteFiles.inc | 3 + contrib/atf/.cirrus.yml | 26 -- contrib/atf/.gitignore | 25 -- contrib/atf/.travis.yml | 25 -- contrib/atf/FREEBSD-Xlist | 2 +- contrib/atf/NEWS | 200 ++++++++++---- contrib/atf/README | 37 --- contrib/atf/README.md | 43 ++- contrib/atf/atf-c++/atf-c++.3 | 4 +- contrib/atf/atf-c++/check.cpp | 3 +- contrib/atf/atf-c++/check.hpp | 3 +- contrib/atf/atf-c++/detail/Kyuafile | 1 - contrib/atf/atf-c++/detail/application.cpp | 16 +- contrib/atf/atf-c++/detail/application.hpp | 1 - contrib/atf/atf-c++/detail/auto_array.hpp | 175 ------------ contrib/atf/atf-c++/detail/auto_array_test.cpp | 302 --------------------- contrib/atf/atf-c++/detail/fs.cpp | 1 - contrib/atf/atf-c++/detail/process.cpp | 22 +- contrib/atf/atf-c++/detail/process.hpp | 3 +- contrib/atf/atf-c++/detail/process_test.cpp | 32 +-- contrib/atf/atf-c++/detail/test_helpers.hpp | 4 - contrib/atf/atf-c++/detail/text.cpp | 8 - contrib/atf/atf-c++/detail/text.hpp | 8 - contrib/atf/atf-c++/detail/text_test.cpp | 21 -- contrib/atf/atf-c++/tests.cpp | 48 ++-- contrib/atf/atf-c++/tests_test.cpp | 4 + contrib/atf/atf-c/.gitignore | 1 - contrib/atf/atf-c/atf-c.3 | 22 +- contrib/atf/atf-c/build.c | 2 +- contrib/atf/atf-c/check.c | 1 + contrib/atf/atf-c/defs.h.in | 1 + contrib/atf/atf-c/detail/dynstr.c | 35 +-- contrib/atf/atf-c/detail/dynstr_test.c | 21 +- contrib/atf/atf-c/detail/env.c | 41 +-- contrib/atf/atf-c/detail/fs.c | 57 +--- contrib/atf/atf-c/detail/fs_test.c | 11 +- contrib/atf/atf-c/detail/list.c | 5 +- contrib/atf/atf-c/detail/map.c | 22 +- contrib/atf/atf-c/detail/map_test.c | 1 + contrib/atf/atf-c/detail/process.c | 59 ++-- contrib/atf/atf-c/detail/process.h | 3 +- contrib/atf/atf-c/detail/process_test.c | 57 ++-- contrib/atf/atf-c/detail/sanity_test.c | 9 +- contrib/atf/atf-c/detail/text.c | 1 + contrib/atf/atf-c/detail/tp_main.c | 59 ++-- contrib/atf/atf-c/error.c | 10 +- contrib/atf/atf-c/macros.h | 8 +- contrib/atf/atf-c/tc.c | 71 +++-- contrib/atf/atf-c/tc.h | 2 - contrib/atf/atf-c/tc_test.c | 86 ++++++ contrib/atf/atf-c/tp.c | 3 +- contrib/atf/atf-c/tp.h | 2 +- contrib/atf/atf-c/tp_test.c | 1 + contrib/atf/atf-c/utils.c | 72 +++-- contrib/atf/atf-c/utils.h | 1 + contrib/atf/atf-sh/.gitignore | 2 - contrib/atf/atf-sh/Kyuafile | 1 + contrib/atf/atf-sh/Kyuafile.in | 11 + contrib/atf/atf-sh/atf-check.1 | 42 +-- contrib/atf/atf-sh/atf-check.cpp | 67 +++-- contrib/atf/atf-sh/atf-check_test.sh | 4 +- contrib/atf/atf-sh/atf-sh.3 | 2 +- contrib/atf/atf-sh/atf-sh.cpp | 52 ++-- contrib/atf/atf-sh/integration_test.sh | 19 ++ contrib/atf/atf-sh/kmod_test.sh | 55 ++++ contrib/atf/atf-sh/libatf-sh.subr | 40 +++ contrib/atf/config.h | 132 +++++++-- contrib/atf/doc/.gitignore | 1 - .../atf/doc/{atf-test-case.4 => atf-test-case.7} | 14 +- contrib/atf/test-programs/srcdir_test.sh | 10 - lib/atf/Makefile.inc | 2 + libexec/atf/Makefile.inc | 2 + share/doc/atf/Makefile | 12 +- share/man/man4/Makefile | 6 - share/man/man7/Makefile | 11 +- 75 files changed, 950 insertions(+), 1216 deletions(-) diff --git a/ObsoleteFiles.inc b/ObsoleteFiles.inc index 06e7f963e89e..3318e4f09844 100644 --- a/ObsoleteFiles.inc +++ b/ObsoleteFiles.inc @@ -64,6 +64,9 @@ OLD_FILES+=usr/share/certs/untrusted/Entrust_Root_Certification_Authority.pem OLD_FILES+=usr/bin/lesskey OLD_FILES+=usr/share/man/man1/lesskey.1.gz +# 20260921: atf-0.26 release +OLD_FILES+=usr/share/doc/atf/README + # 20260602: Removed by 0a36787e4c1f on 20210723 OLD_FILES+=usr/share/locale/hr_HR.ISO8859-2/LC_MESSAGES OLD_FILES+=usr/share/locale/nl_BE.ISO8859-1/LC_MESSAGES diff --git a/contrib/atf/.cirrus.yml b/contrib/atf/.cirrus.yml deleted file mode 100644 index fd9b6e4a47df..000000000000 --- a/contrib/atf/.cirrus.yml +++ /dev/null @@ -1,26 +0,0 @@ -env: - CIRRUS_CLONE_DEPTH: 1 - ARCH: amd64 - -task: - matrix: - - name: 13.0-CURRENT - freebsd_instance: - image_family: freebsd-13-0-snap - - name: 12.2-STABLE - freebsd_instance: - image_family: freebsd-12-2-snap - - name: 12.1-RELEASE - freebsd_instance: - image_family: freebsd-12-1 - install_script: - - sed -i.bak -e 's,pkg+http://pkg.FreeBSD.org/\${ABI}/quarterly,pkg+http://pkg.FreeBSD.org/\${ABI}/latest,' /etc/pkg/FreeBSD.conf - - ASSUME_ALWAYS_YES=yes pkg bootstrap -f - - pkg install -y autoconf automake libtool kyua - script: - - env JUNIT_OUTPUT=$(pwd)/test-results.xml ./admin/travis-build.sh - always: - junit_artifacts: - path: "test-results.xml" - type: text/xml - format: junit diff --git a/contrib/atf/.gitignore b/contrib/atf/.gitignore deleted file mode 100644 index 396785ce2052..000000000000 --- a/contrib/atf/.gitignore +++ /dev/null @@ -1,25 +0,0 @@ -*.la -*.lo -*.o -*.pc -*_helper -*_helpers -*_test -.deps -.dirstamp -.libs - -Makefile -Makefile.in -aclocal.m4 -autom4te.cache -config.h -config.h.in -config.h.in~ -config.log -config.status -configure -installcheck.log -libtool -stamp-h1 -testsuite.log diff --git a/contrib/atf/.travis.yml b/contrib/atf/.travis.yml deleted file mode 100644 index 1949aae54468..000000000000 --- a/contrib/atf/.travis.yml +++ /dev/null @@ -1,25 +0,0 @@ -language: cpp - -compiler: - - gcc - - clang - -before_install: - - ./admin/travis-install-deps.sh - -env: - - ARCH=amd64 AS_ROOT=no - - ARCH=amd64 AS_ROOT=yes - - ARCH=i386 AS_ROOT=no - -matrix: - exclude: - - compiler: clang - env: ARCH=i386 AS_ROOT=no - -script: - - ./admin/travis-build.sh - -notifications: - email: - - atf-log@googlegroups.com diff --git a/contrib/atf/FREEBSD-Xlist b/contrib/atf/FREEBSD-Xlist index 05ea871eb95c..06fef93a4024 100644 --- a/contrib/atf/FREEBSD-Xlist +++ b/contrib/atf/FREEBSD-Xlist @@ -2,7 +2,7 @@ */Makefile* */*.m4 */*.pc.in -INSTALL +INSTALL.md Makefile* aclocal.m4 admin/ diff --git a/contrib/atf/NEWS b/contrib/atf/NEWS index 671ee81ff6ff..e1c9e5f512f5 100644 --- a/contrib/atf/NEWS +++ b/contrib/atf/NEWS @@ -1,26 +1,140 @@ -Major changes between releases Automated Testing Framework -=========================================================================== +# Major changes between releases + +## Changes in version 0.26 + +Released on 2026/09/22. + +### Developer Workflow Changes + +* #189: Automate uploading release assets +* #190: INSTALL.md: sync content with version from lutok +* #191: [CI] Minor tweaks + +### Feature Enhancements + +* #192: Add kmod support on FreeBSD + +**Full Changelog**: https://github.com/freebsd/atf/compare/atf-0.25...atf-0.26 + +## Changes in version 0.25 + +Released on 2026/09/02. + +### Bugfixes +* #187: Fix the build on NetBSD by renaming a variable added in version 0.24. + +### Developer Workflow Changes +* #185: The version of LLVM used in macOS runners was bumped from 19 to 20 + +**Full Changelog**: https://github.com/freebsd/atf/compare/atf-0.24...atf-0.25 + +## Changes in version 0.24 + +Released on August, 17, 2026 + +### Major Changes +* This version of ATF requires C++-20 to build/function. +* This version of ATF focused heavily on correctness and memory management + issues discussed in #77. While most of the issues are believed to be resolved, + some issues may still remain. +* The `atf::text::duplicate(..)` API and tests were removed. + +### Feature Enhancements +* Issue #105: Widen our process status capabilties + +### Docs +* Issue #107: Clarify the semantics of ATF_{CHECK,REQUIRE}_ERRNO() +* Issue #124: atf-check.1: Add missing -r flag to synopsis +* Issue #127: atf-c.3: Fix test case addition in ATF_TP_ADD_TCS synopsis example + +### Developer Workflow Changes +* GitHub Actions support was added. +* Cirrus CI support was removed. +* FreeBSD vmactions CI support was added. +* ASAN/LSAN/UBSAN support was added for Linux and macOS. +* (Initial) runtime code coverage support was added. +* (Initial) pre-commit support was added. + +**Full Changelog**: https://github.com/freebsd/atf/compare/atf-0.23...atf-0.24 + +## Changes in version 0.23 + +Released on March, 29, 2025 -Changes in version 0.22 -*********************** +* Issue #101: fix release tarballs by using `make dist` instead of + alternative ad hoc method. -STILL UNDER DEVELOPMENT; NOT RELEASED YET. -DON'T FORGET TO BUMP THE -version-info PRE-RELEASE IF NECESSARY! +* Issue #76: `atf_check`: fix `std::length_error` thrown from `temp_file`. + +* #87: Update documentation/build files to point to FreeBSD repo/mailing lists. + +* #86: Improve diagnostics when paths cannot be opened + +* #85: various build-related changes. Highlights: + * Remove leftover references of `auto_array` (bugfix). + * Remove the `atf-*-api` manpages (enhancement). + * Require -std=C++14 with ATF (enhancement). + * Expose `WCOREDUMP(..)` on platforms that support it (bugfix). + * Add `__attribute__((nonnull))` support (enhancement). + * Restore `AC_PROG_CPP` (bugfix). + +### General fixes + +* Fix various style issues which were blocking `make dist` from completing + cleanly. + +* Fix `atf_utils_file_exists` declaration in atf-c(3). + +* Fix various memory leaks and logic errors. + +* `atf-test-case(4)`: update reference to the "descr" metadata property so it's + marked Optional. + +* `atf-check.cpp`: remove unnecessary data copy in `temp_file`. + +## Changes in version 0.22 + +Released on November 25th, 2024. * Issue #23: Fix double-free triggered by atf_map_insert in low memory scenarios, caused by an overlook in the atf_list code. -* Issue #29: Fixed various typos and formatting errors in manual pages. - * Issue #31: Added require.progs metadata properties to the tests that need a compiler to run. * Added the atf_check_not_equal function to atf-sh to check for unequal values. +* Add `-r timeout` flag to `atf-check`. + +* Open results files before executing tests to fix an issue ATF tests that + adjust the processes' Capsicum rights as part of the testcase(s) + executed. + +* Add Cirrus CI integration for FreeBSD CI/CD support. + +* Address compilation issues on OpenSolaris distributions. + +* Replace `auto_array` with `std::vector` (fixes modern C++ compliance). + +* Replace `auto_ptr` with `std::unique_ptr` (fixes modern C++ compliance). + +* Update autotools idioms and requirements. The minimum required version of + autoconf is now 2.68. + +* Modify `ATF_CHECK*` and `ATF_REQUIRE*` macros to avoid double + evaluation/allow the gcc toolchain to detect accidental single + assignment typos. + +* Always define CPP to fix use of ATF_BUILD_CPP when the user did not + define CPP when invoking the configure script. + +### General fixes + +* Fix various typos and formatting errors in manual pages and markdown + documents. -Changes in version 0.21 -*********************** +## Changes in version 0.21 Released on October 23rd, 2014. @@ -76,8 +190,7 @@ Released on October 23rd, 2014. * Issue #19: Removed stale references to atf-config and atf-run. -Changes in version 0.20 -*********************** +## Changes in version 0.20 Experimental version released on February 7th, 2014. @@ -92,8 +205,7 @@ the 'tools' directory for your own consumption. that ships with FreeBSD 11.0-CURRENT. -Changes in version 0.19 -*********************** +## Changes in version 0.19 Experimental version released on February 7th, 2014. @@ -112,7 +224,7 @@ does not depend on any internal details of atf-c++ any longer. * Project hosting moved from Google Code (as a subproject of Kyua) to GitHub (as a first-class project). The main reason for the change is the suppression of binary downloads in Google Code on Jan 15th, 2014. - See https://github.com/jmmv/atf/ + See https://github.com/freebsd/atf/ * Removed builtin help from atf-sh(1) and atf-check(1) for simplicity reasons. In other words, their -h option is gone. @@ -124,8 +236,7 @@ does not depend on any internal details of atf-c++ any longer. atf-c++ would break the stale tools. -Changes in version 0.18 -*********************** +## Changes in version 0.18 Experimental version released on November 16th, 2013. @@ -142,8 +253,7 @@ Experimental version released on November 16th, 2013. * NetBSD PR bin/48285: Fixed atf_check examples in atf-sh-api(3). -Changes in version 0.17 -*********************** +## Changes in version 0.17 Experimental version released on February 14th, 2013. @@ -176,8 +286,7 @@ Experimental version released on February 14th, 2013. cases from breaking xsltproc later. -Changes in version 0.16 -*********************** +## Changes in version 0.16 Experimental version released on July 10th, 2012. @@ -211,8 +320,7 @@ Experimental version released on July 10th, 2012. lives in a subcomponent of the Kyua project. -Changes in version 0.15 -*********************** +## Changes in version 0.15 Experimental version released on January 16th, 2012. @@ -248,8 +356,7 @@ Experimental version released on January 16th, 2012. mangle our report. -Changes in version 0.14 -*********************** +## Changes in version 0.14 Experimental version released on June 14th, 2011. @@ -277,8 +384,7 @@ Experimental version released on June 14th, 2011. case to run. -Changes in version 0.13 -*********************** +## Changes in version 0.13 Experimental version released on March 31st, 2011. @@ -323,8 +429,7 @@ The changes in this release are: instead of just listing them as having 0 test cases. -Changes in version 0.12 -*********************** +## Changes in version 0.12 Experimental version released on November 7th, 2010. @@ -359,8 +464,7 @@ Experimental version released on November 7th, 2010. general, not be blindly run as root in the first place. -Changes in version 0.11 -*********************** +## Changes in version 0.11 Experimental version released on October 20th, 2010. @@ -382,8 +486,7 @@ Experimental version released on October 20th, 2010. * Fixed the XSTL and CSS stylesheets to support expected failures. -Changes in version 0.10 -*********************** +## Changes in version 0.10 Experimental version released on July 2nd, 2010. @@ -410,7 +513,7 @@ Miscellaneous features take the expected exception as the first argument and the statement to execute as the second argument. -Changes in atf-check +### Changes in atf-check * Changed atf-check to support negating the status and output checks by prefixing them with not- and added support to specify multiple checkers @@ -463,8 +566,7 @@ Code simplifications and cleanups easier to maintain. -Changes in version 0.9 -********************** +## Changes in version 0.9 Experimental version released on June 3rd, 2010. @@ -491,8 +593,7 @@ Experimental version released on June 3rd, 2010. ATF_TEST_CASE_WITHOUT_HEAD. -Changes in version 0.8 -********************** +## Changes in version 0.8 Experimental version released on May 7th, 2010. @@ -541,8 +642,7 @@ Experimental version released on May 7th, 2010. name of their own. -Changes in version 0.7 -********************** +## Changes in version 0.7 Experimental version released on December 22nd, 2009. @@ -571,8 +671,7 @@ Experimental version released on December 22nd, 2009. * Fixed many memory and object leaks. -Changes in version 0.6 -********************** +## Changes in version 0.6 Experimental version released on January 18th, 2009. @@ -605,8 +704,7 @@ Experimental version released on January 18th, 2009. _STREQ_MSG. -Changes in version 0.5 -********************** +## Changes in version 0.5 Experimental version released on May 1st, 2008. @@ -632,8 +730,7 @@ Experimental version released on May 1st, 2008. executed multiple times to comply with the user's requests. -Changes in version 0.4 -********************** +## Changes in version 0.4 Experimental version released on February 4th, 2008. @@ -665,8 +762,7 @@ Experimental version released on February 4th, 2008. were likely affected too. -Changes in version 0.3 -********************** +## Changes in version 0.3 Experimental version released on November 11th, 2007. @@ -699,8 +795,7 @@ Experimental version released on November 11th, 2007. incomplete. -Changes in version 0.2 -********************** +## Changes in version 0.2 Experimental version released on September 20th, 2007. @@ -731,8 +826,7 @@ Experimental version released on September 20th, 2007. * Multiple bug fixes and improvements all around. -Changes in version 0.1 -********************** +## Changes in version 0.1 Experimental version released on August 20th, 2007. @@ -741,4 +835,4 @@ Experimental version released on August 20th, 2007. =========================================================================== -vim: filetype=text:textwidth=75:expandtab:shiftwidth=2:softtabstop=2 +# vim: syntax=markdown:textwidth=75:expandtab:shiftwidth=2:softtabstop=2 diff --git a/contrib/atf/README b/contrib/atf/README deleted file mode 100644 index d3b03edb9419..000000000000 --- a/contrib/atf/README +++ /dev/null @@ -1,37 +0,0 @@ -Introductory information Automated Testing Framework -=========================================================================== - - -Introduction -************ - -The Automated Testing Framework (ATF) is a collection of libraries to -implement test programs in a variety of languages. At the moment, ATF -offers C, C++ and POSIX shell bindings with which to implement tests. -These bindings all offer a similar set of functionality and any test -program written with them exposes a consistent user interface. - -ATF-based test programs rely on a separate runtime engine to execute them. -The runtime engine is in charge of isolating the test programs from the -rest of the system to ensure that their results are deterministic and that -they cannot affect the running system. The runtime engine is also -responsible for gathering the results of all tests and composing reports. -The current runtime of choice is Kyua. - - -Other documents -*************** - -* AUTHORS: List of authors and contributors for this project. - -* COPYING: License information. - -* INSTALL: Compilation and installation instructions. These is not the - standard document shipped with many packages, so be sure to read it for - things that are specific to ATF's build. - -* NEWS: List of major changes between formal, published releases. - - -=========================================================================== -vim: filetype=text:textwidth=75:expandtab:shiftwidth=2:softtabstop=2 diff --git a/contrib/atf/README.md b/contrib/atf/README.md index d245552f35c9..0513546fc7cc 100644 --- a/contrib/atf/README.md +++ b/contrib/atf/README.md @@ -12,36 +12,57 @@ interface** to allow both humans and automation to run the tests. ATF-based test programs **rely on an execution engine** to be run and this execution engine is *not* shipped with ATF. -**[Kyua](https://github.com/jmmv/kyua/) is the engine of choice.** +**[Kyua](https://github.com/freebsd/kyua/) is the engine of choice.** ## Download Formal releases for source files are available for download from GitHub: -* [atf 0.20](../../releases/tag/atf-0.20), released on February 7th, 2014. +* [atf 0.25](../../releases/tag/atf-0.25), released on September 2nd, 2026. ## Installation You are encouraged to install binary packages for your operating system wherever available: -* Fedora 20 and above: install the `atf` package with `yum install atf`. - * FreeBSD 10.0 and above: install the `atf` package with `pkg install atf`. * NetBSD with pkgsrc: install the `pkgsrc/devel/atf` package. * OpenBSD: install the `devel/atf` package with `pkg_add atf`. +* Ubuntu: install the `libatf-dev` and `atf-sh` packages with + `apt install libatf-dev atf-sh`. + Should you want to build and install ATF from the source tree provided -here, follow the instructions in the [INSTALL file](INSTALL). +here, follow the instructions in the [INSTALL file](INSTALL.md). + +## More Reading + +* AUTHORS: List of authors and contributors for this project. + +* COPYING: License information. + +* INSTALL.md: Compilation and installation instructions. These is not the + standard document shipped with many packages, so be sure to read it for + things that are specific to ATF's build. + +* NEWS.md: List of major changes between formal, published releases. + +## Other documents + +* `AUTHORS`: List of authors and contributors for this project. + +* `COPYING`: License information. + +* `INSTALL.md`: Compilation and installation instructions. These is not the + standard document shipped with many packages, so be sure to read it for + things that are specific to ATF's build. + +* `NEWS.md`: List of major changes between formal, published releases. ## Support Please use the -[atf-discuss mailing list](https://groups.google.com/forum/#!forum/atf-discuss) -for any support inquiries related to `atf-c`, `atf-c++` or `atf-sh`. - -If you have any questions on Kyua proper, please use the -[kyua-discuss mailing list](https://groups.google.com/forum/#!forum/kyua-discuss) -instead. +[FreeBSD-testing@FreeBSD.org](mailto:FreeBSD-testing@FreeBSD.org) mailing list +for any support inquiries related to `atf-c`, `atf-c++`, `atf-sh`, or `kyua`. diff --git a/contrib/atf/atf-c++/atf-c++.3 b/contrib/atf/atf-c++/atf-c++.3 index bb83e6214622..2254d481efff 100644 --- a/contrib/atf/atf-c++/atf-c++.3 +++ b/contrib/atf/atf-c++/atf-c++.3 @@ -22,7 +22,7 @@ .\" IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR .\" OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN .\" IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -.Dd May 11, 2025 +.Dd October 13, 2014 .Dt ATF-C++ 3 .Os .Sh NAME @@ -285,6 +285,8 @@ additional kernel modules in the test case's body by using the .Fn require_kmod function, which takes the name of a single module. If it is not found, the test case will be automatically skipped. +This feature is only available on +.Fx . .Ss Requiring programs Aside from the .Va require.progs diff --git a/contrib/atf/atf-c++/check.cpp b/contrib/atf/atf-c++/check.cpp index 5d8580023a15..78da33fa9620 100644 --- a/contrib/atf/atf-c++/check.cpp +++ b/contrib/atf/atf-c++/check.cpp @@ -150,5 +150,6 @@ impl::exec(const atf::process::argv_array& argva) if (atf_is_error(err)) throw_atf_error(err); - return std::unique_ptr< impl::check_result >(new impl::check_result(&result)); + return std::unique_ptr< impl::check_result >( + new impl::check_result(&result)); } diff --git a/contrib/atf/atf-c++/check.hpp b/contrib/atf/atf-c++/check.hpp index 4d7f079d1ac1..bcf9cb647f29 100644 --- a/contrib/atf/atf-c++/check.hpp +++ b/contrib/atf/atf-c++/check.hpp @@ -71,7 +71,8 @@ class check_result { check_result(const atf_check_result_t* result); friend check_result test_constructor(const char* const*); - friend std::unique_ptr< check_result > exec(const atf::process::argv_array&); + friend std::unique_ptr< check_result > + exec(const atf::process::argv_array&); public: //! diff --git a/contrib/atf/atf-c++/detail/Kyuafile b/contrib/atf/atf-c++/detail/Kyuafile index fc799e64df69..425595cef644 100644 --- a/contrib/atf/atf-c++/detail/Kyuafile +++ b/contrib/atf/atf-c++/detail/Kyuafile @@ -3,7 +3,6 @@ syntax("kyuafile", 1) test_suite("atf") atf_test_program{name="application_test"} -atf_test_program{name="auto_array_test"} atf_test_program{name="env_test"} atf_test_program{name="exceptions_test"} atf_test_program{name="fs_test"} diff --git a/contrib/atf/atf-c++/detail/application.cpp b/contrib/atf/atf-c++/detail/application.cpp index 37086eb3ae8c..3eeb8f966cf9 100644 --- a/contrib/atf/atf-c++/detail/application.cpp +++ b/contrib/atf/atf-c++/detail/application.cpp @@ -37,6 +37,7 @@ extern "C" { #include #include #include +#include #include extern "C" { @@ -205,19 +206,8 @@ impl::app::run(int argc, char* const* argv) m_argc = argc; m_argv = argv; - m_argv0 = m_argv[0]; - - m_prog_name = std::strrchr(m_argv[0], '/'); - if (m_prog_name == NULL) - m_prog_name = m_argv[0]; - else - m_prog_name++; - - // Libtool workaround: if running from within the source tree (binaries - // that are not installed yet), skip the "lt-" prefix added to files in - // the ".libs" directory to show the real (not temporary) name. - if (std::strncmp(m_prog_name, "lt-", 3) == 0) - m_prog_name += 3; + auto m_prog_filename = std::filesystem::path(m_argv[0]).filename(); + m_prog_name = m_prog_filename.c_str(); const std::string bug = std::string("This is probably a bug in ") + m_prog_name + diff --git a/contrib/atf/atf-c++/detail/application.hpp b/contrib/atf/atf-c++/detail/application.hpp index cdb4073ad807..ad068467ac3a 100644 --- a/contrib/atf/atf-c++/detail/application.hpp +++ b/contrib/atf/atf-c++/detail/application.hpp @@ -81,7 +81,6 @@ protected: int m_argc; char* const* m_argv; - const char* m_argv0; const char* m_prog_name; std::string m_description; std::string m_manpage; diff --git a/contrib/atf/atf-c++/detail/auto_array.hpp b/contrib/atf/atf-c++/detail/auto_array.hpp deleted file mode 100644 index b434a5808235..000000000000 --- a/contrib/atf/atf-c++/detail/auto_array.hpp +++ /dev/null @@ -1,175 +0,0 @@ -// Copyright (c) 2007 The NetBSD Foundation, Inc. -// All rights reserved. -// -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions -// are met: -// 1. Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// 2. Redistributions in binary form must reproduce the above copyright -// notice, this list of conditions and the following disclaimer in the -// documentation and/or other materials provided with the distribution. -// -// THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND -// CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, -// INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -// MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. -// IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS BE LIABLE FOR ANY -// DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -// DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE -// GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER -// IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR -// OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN -// IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -#if !defined(ATF_CXX_DETAIL_AUTO_ARRAY_HPP) -#define ATF_CXX_DETAIL_AUTO_ARRAY_HPP - -#include - -namespace atf { - -// ------------------------------------------------------------------------ -// The "auto_array" class. -// ------------------------------------------------------------------------ - -template< class T > -struct auto_array_ref { - T* m_ptr; - - explicit auto_array_ref(T*); -}; - -template< class T > -auto_array_ref< T >::auto_array_ref(T* ptr) : - m_ptr(ptr) -{ -} - -template< class T > -class auto_array { - T* m_ptr; - -public: - auto_array(T* = NULL) throw(); - auto_array(auto_array< T >&) throw(); - auto_array(auto_array_ref< T >) throw(); - ~auto_array(void) throw(); - - T* get(void) throw(); - const T* get(void) const throw(); - T* release(void) throw(); - void reset(T* = NULL) throw(); - - auto_array< T >& operator=(auto_array< T >&) throw(); - auto_array< T >& operator=(auto_array_ref< T >) throw(); - - T& operator[](int) throw(); - operator auto_array_ref< T >(void) throw(); -}; - -template< class T > -auto_array< T >::auto_array(T* ptr) - throw() : - m_ptr(ptr) -{ -} - -template< class T > -auto_array< T >::auto_array(auto_array< T >& ptr) - throw() : - m_ptr(ptr.release()) -{ -} - -template< class T > -auto_array< T >::auto_array(auto_array_ref< T > ref) - throw() : - m_ptr(ref.m_ptr) -{ -} - -template< class T > -auto_array< T >::~auto_array(void) - throw() -{ - if (m_ptr != NULL) - delete [] m_ptr; -} *** 3475 LINES SKIPPED ***