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..7e9059f9 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.2 + hooks: + - id: beman-tidy + args: [".", "--verbose"] exclude: 'infra/' diff --git a/CMakeLists.txt b/CMakeLists.txt index 0444f743..9e267995 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,15 @@ 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