From 3fa5201e153fe61b04ffb18ef580467af7866eed Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Darius=20Nea=C8=9Bu?= Date: Thu, 9 Jul 2026 23:18:40 +0300 Subject: [PATCH 1/3] Enable beman-tidy v0.5.1 in default mode Uncomment the beman-tidy pre-commit hook at v0.5.1 with default-mode args and add .beman-tidy.yaml. Fix requirement-level failures for readme badges, cmake library alias, and missing SPDX license IDs. --- .beman-tidy.yaml | 9 +++++++++ .github/workflows/doxygen-gh-pages.yml | 1 + .github/workflows/pre-commit-check.yml | 1 + .markdownlint.yaml | 1 + .pre-commit-config.yaml | 10 ++++++---- CMakeLists.txt | 10 ++++++++-- README.md | 7 ++++--- bin/mk-deps.py | 1 + bin/mk-doc.py | 1 + examples/suspend_never.cpp | 1 + include/beman/execution/detail/transform_sender.hpp | 2 +- 11 files changed, 34 insertions(+), 10 deletions(-) create mode 100644 .beman-tidy.yaml diff --git a/.beman-tidy.yaml b/.beman-tidy.yaml new file mode 100644 index 00000000..e1080085 --- /dev/null +++ b/.beman-tidy.yaml @@ -0,0 +1,9 @@ +# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + +# This is the config file for beman-tidy, which checks compliance with the Beman Standard (https://github.com/bemanproject/beman/blob/main/docs/beman_standard.md) +# Check documentation for beman-tidy here: +# https://github.com/bemanproject/beman-tidy/blob/main/README.md + +disabled_rules: [] +ignored_paths: + - infra/ diff --git a/.github/workflows/doxygen-gh-pages.yml b/.github/workflows/doxygen-gh-pages.yml index 7fd2c829..3ff1997d 100644 --- a/.github/workflows/doxygen-gh-pages.yml +++ b/.github/workflows/doxygen-gh-pages.yml @@ -1,3 +1,4 @@ +# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception name: Doxygen GitHub Pages Deploy Action on: diff --git a/.github/workflows/pre-commit-check.yml b/.github/workflows/pre-commit-check.yml index 2f911038..d3cc6af8 100644 --- a/.github/workflows/pre-commit-check.yml +++ b/.github/workflows/pre-commit-check.yml @@ -1,3 +1,4 @@ +# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception name: Lint Check (pre-commit) on: diff --git a/.markdownlint.yaml b/.markdownlint.yaml index 81f5fcd7..24f7550f 100644 --- a/.markdownlint.yaml +++ b/.markdownlint.yaml @@ -1,3 +1,4 @@ +# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception # MD033/no-inline-html : Inline HTML : https://github.com/DavidAnson/markdownlint/blob/v0.35.0/doc/md033.md # Disable inline html linter is needed for
MD033: false diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 0742c317..bc1bd44e 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -1,3 +1,4 @@ +# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception # See https://pre-commit.com for more information # See https://pre-commit.com/hooks.html for more hooks repos: @@ -60,9 +61,10 @@ repos: - id: black # Beman Standard checking via beman-tidy - # - repo : https://github.com/bemanproject/beman-tidy - # rev: v0.5.1 - # hooks: - # - id: beman-tidy + - repo: https://github.com/bemanproject/beman-tidy + rev: v0.5.1 + hooks: + - id: beman-tidy + args: [".", "--verbose"] exclude: 'infra/' diff --git a/CMakeLists.txt b/CMakeLists.txt index 0444f743..b63628b8 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -27,8 +27,8 @@ if(BEMAN_USE_MODULES) # CMake requires the language standard to be specified as compile feature # when a target provides C++23 modules and the target will be installed - add_library(${BEMAN_EXECUTION_TARGET_PREFIX} STATIC) # FIXME: only static yet! CK - add_library(beman::execution ALIAS ${BEMAN_EXECUTION_TARGET_PREFIX}) + add_library(beman.execution STATIC) # FIXME: only static yet! CK + add_library(beman::execution ALIAS beman.execution) target_compile_features( ${BEMAN_EXECUTION_TARGET_PREFIX} PUBLIC cxx_std_${CMAKE_CXX_STANDARD} @@ -106,6 +106,12 @@ option( add_subdirectory(src/beman/execution) +if(NOT BEMAN_USE_MODULES) + add_library(beman.execution INTERFACE) + target_link_libraries(beman.execution INTERFACE ${BEMAN_EXECUTION_TARGET_NAME}) + add_library(beman::execution ALIAS beman.execution) +endif() + #=============================================================================== # NOTE: this must be done before tests! CK include(infra/cmake/beman-install-library.cmake) diff --git a/README.md b/README.md index d9bb3a8e..f2fe8499 100644 --- a/README.md +++ b/README.md @@ -3,9 +3,10 @@ SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception --> # beman.execution: Building Block For Asynchronous Programs - - -![Library Status](https://raw.githubusercontent.com/bemanproject/beman/refs/heads/main/images/badges/beman_badge-beman_library_under_development.svg) ![Standard Target](https://github.com/bemanproject/beman/blob/main/images/badges/cpp26.svg) [![Coverage](https://coveralls.io/repos/github/bemanproject/execution/badge.svg?branch=main)](https://coveralls.io/github/bemanproject/execution?branch=main) + +[![Library Status](https://raw.githubusercontent.com/bemanproject/beman/refs/heads/main/images/badges/beman_badge-beman_library_under_development.svg)](https://github.com/bemanproject/beman/blob/main/docs/beman_library_maturity_model.md#the-beman-library-maturity-model) +![Standard Target](https://github.com/bemanproject/beman/blob/main/images/badges/cpp26.svg) [![Coverage](https://coveralls.io/repos/github/bemanproject/execution/badge.svg?branch=main)](https://coveralls.io/github/bemanproject/execution?branch=main) + `beman.execution` provides the basic vocabulary for asynchronous programming as well as important algorithms implemented in terms diff --git a/bin/mk-deps.py b/bin/mk-deps.py index 44e962ac..f56d5afb 100755 --- a/bin/mk-deps.py +++ b/bin/mk-deps.py @@ -1,4 +1,5 @@ #!/usr/bin/python3 +# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception import re import subprocess diff --git a/bin/mk-doc.py b/bin/mk-doc.py index 2b15fd23..6b0e506c 100755 --- a/bin/mk-doc.py +++ b/bin/mk-doc.py @@ -1,4 +1,5 @@ #!/usr/bin/python3 +# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception import re import sys diff --git a/examples/suspend_never.cpp b/examples/suspend_never.cpp index 649898c0..059f05bb 100644 --- a/examples/suspend_never.cpp +++ b/examples/suspend_never.cpp @@ -1,3 +1,4 @@ +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception #ifdef BEMAN_HAS_IMPORT_STD import std; #else diff --git a/include/beman/execution/detail/transform_sender.hpp b/include/beman/execution/detail/transform_sender.hpp index 6ff9f070..9965e151 100644 --- a/include/beman/execution/detail/transform_sender.hpp +++ b/include/beman/execution/detail/transform_sender.hpp @@ -1,5 +1,5 @@ // include/beman/execution/detail/transform_sender.hpp _*_C++_*_ -// SPDX_License_Identifier: Apache_2.0 WITH LLVM_exception +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception #ifndef INCLUDED_BEMAN_EXECUTION_DETAIL_TRANSFORM_SENDER #define INCLUDED_BEMAN_EXECUTION_DETAIL_TRANSFORM_SENDER From 2c405dd4d964533d5db28ad533933f7ba6b5c361 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Darius=20Nea=C8=9Bu?= Date: Fri, 10 Jul 2026 00:06:40 +0300 Subject: [PATCH 2/3] Fix gersemi formatting for cmake library alias block Reformat the new target_link_libraries call added for the beman::execution alias so gersemi passes in pre-commit CI. --- CMakeLists.txt | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index b63628b8..9e267995 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -108,7 +108,10 @@ add_subdirectory(src/beman/execution) if(NOT BEMAN_USE_MODULES) add_library(beman.execution INTERFACE) - target_link_libraries(beman.execution INTERFACE ${BEMAN_EXECUTION_TARGET_NAME}) + target_link_libraries( + beman.execution + INTERFACE ${BEMAN_EXECUTION_TARGET_NAME} + ) add_library(beman::execution ALIAS beman.execution) endif() From 7fc5ccd52485c49d1921ff64511291df07cd8ffa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Darius=20Nea=C8=9Bu?= Date: Fri, 10 Jul 2026 03:50:28 +0300 Subject: [PATCH 3/3] Bump beman-tidy to v0.5.2 --- .pre-commit-config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index bc1bd44e..7e9059f9 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -62,7 +62,7 @@ repos: # Beman Standard checking via beman-tidy - repo: https://github.com/bemanproject/beman-tidy - rev: v0.5.1 + rev: v0.5.2 hooks: - id: beman-tidy args: [".", "--verbose"]