Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
99 commits
Select commit Hold shift + click to select a range
505e20c
Work around MSVC symmetric transfer use-after-free in transform_awaiter
sgerbino Feb 23, 2026
f363cce
Support FetchContent, add_subdirectory, and standalone install
sgerbino Feb 23, 2026
22ab532
Fix INSTALL_INTERFACE for Boost versioned-layout installs on Windows
sgerbino Feb 23, 2026
2c3a07d
Drone: newer macos and freebsd
sdarwin Feb 24, 2026
74ae330
Export and install test_suite for downstream use
sgerbino Feb 26, 2026
0834bd4
Set -fexperimental-library for FreeBSD and macOS builds and link Threads
mvandeberg Feb 26, 2026
df92ffb
Fix cmake-superproject test builds by respecting BUILD_TESTING and up…
mvandeberg Feb 25, 2026
33209e0
Generate build matrix from compiler dict and expand build coverage
mvandeberg Feb 26, 2026
bf67e59
Add regression test for strand + when_all deadlock
sgerbino Mar 3, 2026
e99f3b5
Fix use-after-free in thread_pool strand teardown
sgerbino Mar 3, 2026
7aca06e
Refactor variadic when_any to return positional variant
mvandeberg Mar 2, 2026
e33b77d
Run MinGW in CI
mvandeberg Mar 2, 2026
d4b27fb
Fix test timing problem on slower FreeBSD CI machine
mvandeberg Mar 3, 2026
05310d9
Fix RTTI detection for Clang-CL
mvandeberg Mar 3, 2026
b43334e
Add standalone examples with documentation
sgerbino Mar 3, 2026
8c2e810
Add FreeBSD 14.3 CI build
mvandeberg Mar 3, 2026
7715a31
Fix thread_pool shutdown race causing CI hangs
mvandeberg Mar 4, 2026
935dd21
Remove unused 'num_workers' in async_mutex example
mvandeberg Mar 4, 2026
69c3db6
Fix MSVC symmetric transfer use-after-free in final_suspend awaiters
sgerbino Mar 4, 2026
2d4c01f
Add circular_dynamic_buffer wrapping, boundary, and fuzz tests
sgerbino Mar 4, 2026
5fc166e
Promote detail type traits to public namespace (#160)
mvandeberg Mar 4, 2026
46b507c
Add std::ranges and std::views tests for buffer types
sgerbino Mar 5, 2026
0c428f0
Explicitly delete move operations on async_event and async_mutex
sgerbino Mar 5, 2026
3f88a02
Replace using-directives with namespace alias in examples and docs
sgerbino Mar 5, 2026
cc21dd1
Expand HALO acronym and link to Frame Allocators page
sgerbino Mar 5, 2026
f0b1dc0
Clarify co_await usage in compiler transformation pseudocode
sgerbino Mar 5, 2026
9fe88b0
Add lambda coroutine captures documentation page
sgerbino Mar 5, 2026
c550bf5
Add stop token propagation tests and document inheritance behavior (#…
mvandeberg Mar 4, 2026
43bbbe6
Add read-some rationale
vinniefalco Mar 5, 2026
3e70dd9
Correct ambiguous workding in read-some-rationale.md
MungoG Mar 6, 2026
6efdd4e
Complete Javadoc coverage and rule compliance for public headers
sgerbino Mar 6, 2026
ad06e26
Remove ASCII line divider comments from public headers
sgerbino Mar 6, 2026
ca16652
Add lifetime, ownership, and semantic documentation
sgerbino Mar 6, 2026
8645de4
Add thread_pool::join() and fix stop_callback TLS poisoning (#163)
mvandeberg Mar 5, 2026
ee8c629
Add ThreadSanitizer CI builds for GCC and Clang
sgerbino Mar 9, 2026
a9e7699
Add timeout combinator, delay awaitable, and timer_service (#63)
mvandeberg Mar 6, 2026
f96129a
Add Apple-Clang TSan CI build and harden strand cache shutdown
mvandeberg Mar 9, 2026
137bbd8
Use std::thread instead of std::jthread in timer_service
mvandeberg Mar 9, 2026
6957c0f
Fix spelling, grammar, and stale identifiers in docs and Javadocs
sgerbino Mar 9, 2026
6f55745
Move allocation benchmark from example/ to bench/
sgerbino Mar 9, 2026
5cb0a02
Align read_some/write_some to E2 semantics and add exception docs
sgerbino Mar 10, 2026
55efc7f
Expand CI build coverage and CMake conformance (#197)
mvandeberg Mar 10, 2026
e2de31c
Dispatch run(ex) task through target executor
sgerbino Mar 11, 2026
18c30d2
Replace void filtering with monostate in when_all to preserve index m…
mvandeberg Mar 11, 2026
ecdb076
Fix timer_service crash when use_service races on multi-threaded pool
mvandeberg Mar 12, 2026
19821af
Add range-based when_all overloads and consolidate internals (#205)
mvandeberg Mar 12, 2026
5d9fa36
Replace raw #ifdef _MSC_VER with BOOST_CAPY_WORKAROUND macro (#144)
mvandeberg Mar 12, 2026
3f47cfc
Add sender-bridge example
vinniefalco Mar 13, 2026
f046646
Add awaitable-sender
vinniefalco Mar 13, 2026
6bfe1a2
Add CMake flag to build P2300 examples
mvandeberg Mar 13, 2026
902bb19
Improved sender-awaitable
vinniefalco Mar 13, 2026
4138e90
Improved awaitable-sender
vinniefalco Mar 15, 2026
2893a04
Rewrite when_all, when_any, and timeout as io_result-only combinators
sgerbino Mar 18, 2026
721b47e
Add quitter task spec
vinniefalco Mar 19, 2026
695d2fa
Add quitter<T> stop-aware task type
mvandeberg Mar 19, 2026
3eb48d9
Fix the name-drop
villevoutilainen Mar 19, 2026
fcd2854
Implement D4126 in awaitable-sender
vinniefalco Mar 20, 2026
150ee20
Rewrite frame_cb tests to avoid coroutine_handle UB
mvandeberg Mar 21, 2026
1047e76
Replace coroutine_handle with continuation in executor interface
mvandeberg Mar 20, 2026
448361d
docs: retry ui-bundle downloads
sdarwin Mar 23, 2026
403947c
Add beman-execution benchmark and fix thread_pool spurious wakeups
sgerbino Mar 23, 2026
83cdfcd
Add safe_resume to prevent TLS spoilage in frame allocator propagation
mvandeberg Mar 24, 2026
0b54d7f
Restructure beman benchmark with bridges, statistics, and rigor
sgerbino Mar 25, 2026
b1f8ead
Replace sender_executor with P2300-realistic scheduler model
sgerbino Mar 27, 2026
bf08032
Coroutine codegen optimizations from compiler/library author analysis
mvandeberg Mar 27, 2026
8c2ca12
Update docs for io_result-based when_all/when_any signatures (#244)
mvandeberg Mar 31, 2026
d6a8e0c
Add O(1) indexed service slots to execution_context
mvandeberg Mar 31, 2026
6e1cb8e
Add synchronous completion benchmark row
sgerbino Mar 27, 2026
5903c8a
Unify PMR allocation counting with global operator new tracking
sgerbino Apr 2, 2026
37d9790
Revert "Add O(1) indexed service slots to execution_context"
sgerbino Apr 2, 2026
a887518
Move post_resume from the public interface to test helpers
mvandeberg Apr 2, 2026
70442c2
Docs: edit-this-page link
sdarwin Apr 3, 2026
21ca572
Rename repeat_effect_until to repeat_until with trampoline and sync row
sgerbino Apr 3, 2026
cead800
Docs: add buffer subsystem design rationale
sgerbino Apr 14, 2026
efe3909
Add failing tests for executor-hopping bug in run()
sgerbino Apr 22, 2026
d5a0406
Make run() post on both trips at cross-executor boundaries
sgerbino Apr 23, 2026
27c6465
Fix TSan race in blocking_context::enqueue
sgerbino Apr 23, 2026
2b3fe69
Make codecov coverage checks informational
sgerbino Apr 23, 2026
0cfc37f
Add buffers rationale docs
vinniefalco Apr 13, 2026
1fafde7
Add Executor improvement guide
vinniefalco Apr 16, 2026
93b2b2f
Symmetric-transfer thread_pool dispatch on worker threads
sgerbino Apr 23, 2026
4051c0c
Strand: per-strand implementation with shared mutex pool
sgerbino Apr 28, 2026
e50df52
docs: add Testing Facilities section covering all public test headers
sgerbino Apr 29, 2026
ea34cb9
docs: fix pre-existing broken xrefs in index, quick-start, and 9k
sgerbino Apr 29, 2026
8b0ebd9
docs: remove references to nonexistent cat() buffer-composition function
sgerbino Apr 29, 2026
55090d1
docs: fix verified API errors in Testing Facilities section
sgerbino Apr 30, 2026
5c7057d
Add IO benchmark analysis to docs
sgerbino May 5, 2026
81a78e2
docs: warn against destroy() on mid-flight task/quitter handles
sgerbino May 7, 2026
ac63112
ci: pin latest MSVC matrix entry to windows-2022 (14.44)
mvandeberg May 12, 2026
78ceedf
Pass buffer sequences by value in read() and write()
mvandeberg May 11, 2026
510a468
Add buffer_slice algorithm and Slice/MutableSlice concepts (#261)
mvandeberg May 12, 2026
3a37a17
Remove tag_invoke customization for buffer sequences (#262)
mvandeberg May 13, 2026
b8b4217
Strand: thread continuation through queue, drop strand_op wrapper (#149)
mvandeberg May 14, 2026
f043fbc
docs: tighten why-capy comparison tables
sgerbino May 19, 2026
1e16ca9
docs: prototype new specification for `write` (#285)
akrzemi1 May 21, 2026
2329f99
feat(bench): add stdexec benchmark mirroring bench/beman/
sgerbino May 21, 2026
7ab1157
feat(example): add gpu-pipeline bridging capy with NVIDIA nvexec
sgerbino May 27, 2026
2919c7e
Docs: update specification of capy::read (#291)
akrzemi1 May 29, 2026
98be9fd
feat(example): validate P4251R0 data-movement listings
sgerbino Jun 2, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
10 changes: 10 additions & 0 deletions .codecov.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,16 @@ codecov:
after_n_builds: 1
wait_for_ci: yes

# Make coverage checks informational (report but never fail CI)
coverage:
status:
project:
default:
informational: true
patch:
default:
informational: true

# Change how pull request comments look
comment:
layout: "reach,diff,flags,files,footer"
Expand Down
23 changes: 21 additions & 2 deletions .drone.star
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ def main(ctx):
# and cmake-superproject (linux/latest gcc) by default
jobs = generate(
[
'gcc >=12.0',
'gcc >=13.0',
'clang >=17.0',
'msvc >=14.1',
'arm64-gcc latest',
Expand All @@ -46,7 +46,26 @@ def main(ctx):
environment={
'B2_TOOLSET': 'clang',
'B2_CXXSTD': '20',
'B2_CXXFLAGS': '-fexperimental-library',
},
globalenv=globalenv),

osx_cxx("macOS: Clang 26.2.0", "clang++", packages="",
buildscript="drone", buildtype="boost",
xcode_version="26.2.0",
environment={
'B2_TOOLSET': 'clang',
'B2_CXXSTD': '20',
},
globalenv=globalenv),
]

jobs += [
freebsd_cxx("clang-22", "clang++-22",
buildscript="drone", buildtype="boost",
freebsd_version="15.0",
environment={
'B2_TOOLSET': 'clang-22',
'B2_CXXSTD': '20',
},
globalenv=globalenv),
]
Expand Down
153 changes: 153 additions & 0 deletions .github/compilers.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,153 @@
{
"gcc": [
{
"version": "13",
"cxxstd": "20,23",
"latest_cxxstd": "23",
"runs_on": "ubuntu-24.04",
"cxx": "g++-13",
"cc": "gcc-13",
"b2_toolset": "gcc",
"arm": true,
"is_earliest": true
},
{
"version": "14",
"cxxstd": "20,23",
"latest_cxxstd": "23",
"runs_on": "ubuntu-24.04",
"cxx": "g++-14",
"cc": "gcc-14",
"b2_toolset": "gcc",
"arm": true
},
{
"version": "15",
"cxxstd": "20,23",
"latest_cxxstd": "23",
"runs_on": "ubuntu-24.04",
"container": "ubuntu:25.04",
"cxx": "g++-15",
"cc": "gcc-15",
"b2_toolset": "gcc",
"is_latest": true
}
],
"clang": [
{
"version": "17",
"cxxstd": "20",
"latest_cxxstd": "20",
"runs_on": "ubuntu-24.04",
"cxx": "clang++-17",
"cc": "clang-17",
"b2_toolset": "clang",
"arm": true,
"is_earliest": true
},
{
"version": "18",
"cxxstd": "20,23",
"latest_cxxstd": "23",
"runs_on": "ubuntu-24.04",
"cxx": "clang++-18",
"cc": "clang-18",
"b2_toolset": "clang",
"arm": true
},
{
"version": "19",
"cxxstd": "20,23",
"latest_cxxstd": "23",
"runs_on": "ubuntu-24.04",
"cxx": "clang++-19",
"cc": "clang-19",
"b2_toolset": "clang",
"arm": true
},
{
"version": "20",
"cxxstd": "20,23",
"latest_cxxstd": "23",
"runs_on": "ubuntu-24.04",
"container": "ubuntu:24.04",
"cxx": "clang++-20",
"cc": "clang-20",
"b2_toolset": "clang",
"arm": true,
"is_latest": true,
"clang_tidy": true
}
],
"msvc": [
{
"version": "14.34",
"cxxstd": "20",
"latest_cxxstd": "20",
"runs_on": "windows-2022",
"b2_toolset": "msvc-14.3",
"generator": "Visual Studio 17 2022",
"is_earliest": true
},
{
"version": "14.44",
"cxxstd": "20",
"latest_cxxstd": "20",
"runs_on": "windows-2022",
"b2_toolset": "msvc-14.4",
"generator": "Visual Studio 17 2022",
"is_latest": true
}
],
"mingw": [
{
"version": "*",
"cxxstd": "20,23",
"latest_cxxstd": "23",
"runs_on": "windows-2022",
"cxx": "clang++",
"cc": "clang",
"b2_toolset": "clang",
"build_cmake": false,
"is_latest": true
}
],
"clang-cl": [
{
"version": "*",
"cxxstd": "20",
"latest_cxxstd": "20",
"runs_on": "windows-2022",
"cxx": "clang++-cl",
"cc": "clang-cl",
"b2_toolset": "clang-win",
"generator_toolset": "ClangCL",
"build_cmake": false,
"is_latest": true
}
],
"apple-clang": [
{
"version": "*",
"cxxstd": "20,23",
"latest_cxxstd": "23",
"runs_on": "macos-15",
"cxx": "clang++",
"cc": "clang",
"b2_toolset": "clang",
"cxxflags": "-fvisibility=hidden -fvisibility-inlines-hidden",
"is_earliest": true
},
{
"version": "*",
"cxxstd": "20,23",
"latest_cxxstd": "23",
"runs_on": "macos-26",
"cxx": "clang++",
"cc": "clang",
"b2_toolset": "clang",
"cxxflags": "-fvisibility=hidden -fvisibility-inlines-hidden",
"is_latest": true
}
]
}
Loading
Loading