From 10c05585cd27f718c3b5e14f489861f33a4c0004 Mon Sep 17 00:00:00 2001 From: Steve Downey Date: Sun, 31 Aug 2025 20:25:08 -0400 Subject: [PATCH 1/4] Update license to preferred form --- LICENSE | 15 --------------- 1 file changed, 15 deletions(-) diff --git a/LICENSE b/LICENSE index 0873f35..f6db814 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,3 @@ -============================================================================== -The Beman Project is under the Apache License v2.0 with LLVM Exceptions: -============================================================================== Apache License Version 2.0, January 2004 @@ -220,15 +217,3 @@ conflicts with the conditions of the GPLv2, you may retroactively and prospectively choose to deem waived or otherwise exclude such Section(s) of the License, but only in their entirety and only with respect to the Combined Software. - -============================================================================== -Software from third parties included in the Beman Project: -============================================================================== -The Beman Project contains third party software which is under different license -terms. All such code will be identified clearly using at least one of two -mechanisms: -1) It will be in a separate directory tree with its own `LICENSE.txt` or - `LICENSE` file at the top containing the specific license and restrictions - which apply to that software, or -2) It will contain specific license and restriction terms at the top of every - file. From 94d20f885be186498533c5c8771df9fa0d07581c Mon Sep 17 00:00:00 2001 From: Steve Downey Date: Sun, 31 Aug 2025 20:25:49 -0400 Subject: [PATCH 2/4] Update README per beman-tidy Update badges Update license --- README.md | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index a971815..9e3be30 100644 --- a/README.md +++ b/README.md @@ -5,14 +5,16 @@ SPDX-License-Identifier: 2.0 license with LLVM exceptions --> - ![CI Tests](https://github.com/bemanproject/optional/actions/workflows/ci.yml/badge.svg) [![Coverage](https://coveralls.io/repos/github/bemanproject/optional/badge.svg?branch=main)](https://coveralls.io/github/bemanproject/optional?branch=main) ![Standard Target](https://github.com/bemanproject/beman/blob/main/images/badges/cpp26.svg) [![Compiler Explorer Example](https://img.shields.io/badge/Try%20it%20on%20Compiler%20Explorer-grey?logo=compilerexplorer&logoColor=67c52a)](https://godbolt.org/z/Gc6Y9j6zf) +![Library Status](https://raw.githubusercontent.com/bemanproject/beman/refs/heads/main/images/badges/beman_badge-beman_library_production_ready_api_may_undergo_changes.svg)![Standard Target](https://github.com/bemanproject/beman/blob/main/images/badges/cpp26.svg)[![Compiler Explorer Example](https://img.shields.io/badge/Try%20it%20on%20Compiler%20Explorer-grey?logo=compilerexplorer&logoColor=67c52a)](https://godbolt.org/z/Gc6Y9j6zf) This repository implements `std::optional` extensions targeting C++26. The `beman.optional` library aims to evaluate the stability, the usability, and the performance of these proposed changes before they are officially adopted by WG21 into the C++ Working Draft. Additionally, it allows developers to use these new features before they are implemented in major standard library compilers. -**Implements**: [Give *std::optional* Range Support (P3168R2)](https://wg21.link/P3168R2) and [`std::optional` (P2988R5)](https://wg21.link/P2988R5) +**Implements**: [Give *std::optional* Range Support (P3168)](https://wg21.link/P3168) and [`std::optional` (P2988)](https://wg21.link/P2988) -**Status**: [Production ready. API may undergo changes.](https://github.com/bemanproject/beman/blob/main/docs/beman_library_maturity_model.md#production-ready-api-may-undergo-changes) +## License + +`beman.exemplar` is licensed under the Apache License v2.0 with LLVM Exceptions. ## Examples From b5f339f024d8f764ca6ebac6fe7bb52dc5ab7eab Mon Sep 17 00:00:00 2001 From: Steve Downey Date: Sun, 31 Aug 2025 21:04:47 -0400 Subject: [PATCH 3/4] Rename .t.cpp to .test.cpp Beman tidying --- tests/beman/optional/CMakeLists.txt | 12 ++++++------ .../optional/{optional.t.cpp => optional.test.cpp} | 0 ...l_constexpr.t.cpp => optional_constexpr.test.cpp} | 0 ...ional_monadic.t.cpp => optional_monadic.test.cpp} | 0 ...support.t.cpp => optional_range_support.test.cpp} | 0 .../{optional_ref.t.cpp => optional_ref.test.cpp} | 0 ...f_monadic.t.cpp => optional_ref_monadic.test.cpp} | 0 7 files changed, 6 insertions(+), 6 deletions(-) rename tests/beman/optional/{optional.t.cpp => optional.test.cpp} (100%) rename tests/beman/optional/{optional_constexpr.t.cpp => optional_constexpr.test.cpp} (100%) rename tests/beman/optional/{optional_monadic.t.cpp => optional_monadic.test.cpp} (100%) rename tests/beman/optional/{optional_range_support.t.cpp => optional_range_support.test.cpp} (100%) rename tests/beman/optional/{optional_ref.t.cpp => optional_ref.test.cpp} (100%) rename tests/beman/optional/{optional_ref_monadic.t.cpp => optional_ref_monadic.test.cpp} (100%) diff --git a/tests/beman/optional/CMakeLists.txt b/tests/beman/optional/CMakeLists.txt index 470397e..b330147 100644 --- a/tests/beman/optional/CMakeLists.txt +++ b/tests/beman/optional/CMakeLists.txt @@ -6,12 +6,12 @@ target_sources( beman_optional_test PRIVATE - optional.t.cpp - optional_constexpr.t.cpp - optional_monadic.t.cpp - optional_range_support.t.cpp - optional_ref.t.cpp - optional_ref_monadic.t.cpp + optional.test.cpp + optional_constexpr.test.cpp + optional_monadic.test.cpp + optional_range_support.test.cpp + optional_ref.test.cpp + optional_ref_monadic.test.cpp ) target_sources( diff --git a/tests/beman/optional/optional.t.cpp b/tests/beman/optional/optional.test.cpp similarity index 100% rename from tests/beman/optional/optional.t.cpp rename to tests/beman/optional/optional.test.cpp diff --git a/tests/beman/optional/optional_constexpr.t.cpp b/tests/beman/optional/optional_constexpr.test.cpp similarity index 100% rename from tests/beman/optional/optional_constexpr.t.cpp rename to tests/beman/optional/optional_constexpr.test.cpp diff --git a/tests/beman/optional/optional_monadic.t.cpp b/tests/beman/optional/optional_monadic.test.cpp similarity index 100% rename from tests/beman/optional/optional_monadic.t.cpp rename to tests/beman/optional/optional_monadic.test.cpp diff --git a/tests/beman/optional/optional_range_support.t.cpp b/tests/beman/optional/optional_range_support.test.cpp similarity index 100% rename from tests/beman/optional/optional_range_support.t.cpp rename to tests/beman/optional/optional_range_support.test.cpp diff --git a/tests/beman/optional/optional_ref.t.cpp b/tests/beman/optional/optional_ref.test.cpp similarity index 100% rename from tests/beman/optional/optional_ref.t.cpp rename to tests/beman/optional/optional_ref.test.cpp diff --git a/tests/beman/optional/optional_ref_monadic.t.cpp b/tests/beman/optional/optional_ref_monadic.test.cpp similarity index 100% rename from tests/beman/optional/optional_ref_monadic.t.cpp rename to tests/beman/optional/optional_ref_monadic.test.cpp From 7b0611830e5f95cbd6a3eb9786fd0c81102a3f2f Mon Sep 17 00:00:00 2001 From: Steve Downey Date: Sun, 31 Aug 2025 21:12:25 -0400 Subject: [PATCH 4/4] Fixup implements and status in README Per beman-tidy --- README.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 9e3be30..bdcf1f9 100644 --- a/README.md +++ b/README.md @@ -10,7 +10,10 @@ SPDX-License-Identifier: 2.0 license with LLVM exceptions This repository implements `std::optional` extensions targeting C++26. The `beman.optional` library aims to evaluate the stability, the usability, and the performance of these proposed changes before they are officially adopted by WG21 into the C++ Working Draft. Additionally, it allows developers to use these new features before they are implemented in major standard library compilers. -**Implements**: [Give *std::optional* Range Support (P3168)](https://wg21.link/P3168) and [`std::optional` (P2988)](https://wg21.link/P2988) +**Implements**: [`std::optional` (P2988R12)](https://wg21.link/P2988R12) and +[Give *std::optional* Range Support (P3168R2)](https://wg21.link/P3168R2). + +**Status**: [Production ready. API may undergo changes.](https://github.com/bemanproject/beman/blob/main/docs/beman_library_maturity_model.md#production-ready-api-may-undergo-changes) ## License