From 830dbb720073afce88013d71ec8049000d0bfe7b Mon Sep 17 00:00:00 2001 From: Mathis Logemann <13556116+mathisloge@users.noreply.github.com> Date: Mon, 6 Oct 2025 18:04:12 +0200 Subject: [PATCH 1/4] build(deps): update to latest stdexec --- CMakeLists.txt | 2 +- CMakePresets.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index d3a3ec5c..5f1c26bc 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -95,7 +95,7 @@ cpmaddpackage( cpmaddpackage("gh:fmtlib/fmt#11.2.0") cpmaddpackage("gh:odygrd/quill@10.1.0") cpmaddpackage(URI "gh:skypjack/entt@3.15.0" NAME "EnTT" FIND_PACKAGE_ARGUMENTS "CONFIG") -cpmaddpackage(URI "gh:NVIDIA/stdexec#daf12bcc46438f88b3c78212363f7b6531338780" NAME "stdexec" VERSION 0.11 FIND_PACKAGE_ARGUMENTS "CONFIG" OPTIONS "STDEXEC_BUILD_TESTS OFF" "STDEXEC_BUILD_EXAMPLES OFF" "STDEXEC_ENABLE_ASIO ON" +cpmaddpackage(URI "gh:NVIDIA/stdexec#770f7959142c2446319f642c82aed8b07aea3f86" NAME "stdexec" VERSION 0.11 FIND_PACKAGE_ARGUMENTS "CONFIG" OPTIONS "STDEXEC_BUILD_TESTS OFF" "STDEXEC_BUILD_EXAMPLES OFF" "STDEXEC_ENABLE_ASIO ON" "CMAKE_SKIP_INSTALL_RULES ${CMAKE_SKIP_INSTALL_RULES}" ) cpmaddpackage(URI "gh:Tradias/asio-grpc@3.5.0" FIND_PACKAGE_ARGUMENTS "CONFIG" VERSION 3.4.0) cpmaddpackage(URI "gh:nlohmann/json@3.12.0" FIND_PACKAGE_ARGUMENTS "CONFIG" NAME "nlohmann_json") diff --git a/CMakePresets.json b/CMakePresets.json index 8c5fcf94..003c58e0 100644 --- a/CMakePresets.json +++ b/CMakePresets.json @@ -53,8 +53,8 @@ "debug-build" ], "cacheVariables": { + "QUITE_INSTALL": false, "BUILD_TESTING": true, - "CMAKE_SKIP_INSTALL_RULES": true, "SANITIZE_ADDRESS": false, "SANITIZE_UNDEFINED": false } From af5dc335f4aa4722a5f085586cb843f79b877c20 Mon Sep 17 00:00:00 2001 From: Mathis Logemann <13556116+mathisloge@users.noreply.github.com> Date: Mon, 6 Oct 2025 18:10:48 +0200 Subject: [PATCH 2/4] build(presets): don't install on ci build --- CMakePresets.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CMakePresets.json b/CMakePresets.json index 003c58e0..30275680 100644 --- a/CMakePresets.json +++ b/CMakePresets.json @@ -96,13 +96,13 @@ "common" ], "cacheVariables": { + "QUITE_INSTALL": false, "CMAKE_BUILD_TYPE": "RelWithDebInfo", "BUILD_TESTING": true, "CMAKE_C_COMPILER": "gcc-13", "CMAKE_CXX_COMPILER": "g++-13", "CMAKE_C_COMPILER_LAUNCHER": "ccache", - "CMAKE_CXX_COMPILER_LAUNCHER": "ccache", - "CMAKE_SKIP_INSTALL_RULES": true + "CMAKE_CXX_COMPILER_LAUNCHER": "ccache" }, "environment": { "WAYLAND_DISPLAY": "wl-test-env" From 8ec3eb5b597ee94c61710ce3ad2f7cdfe20daab8 Mon Sep 17 00:00:00 2001 From: Mathis Logemann <13556116+mathisloge@users.noreply.github.com> Date: Sun, 26 Oct 2025 18:41:27 +0100 Subject: [PATCH 3/4] build(deps): update stdexec --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 5f1c26bc..814474a7 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -95,7 +95,7 @@ cpmaddpackage( cpmaddpackage("gh:fmtlib/fmt#11.2.0") cpmaddpackage("gh:odygrd/quill@10.1.0") cpmaddpackage(URI "gh:skypjack/entt@3.15.0" NAME "EnTT" FIND_PACKAGE_ARGUMENTS "CONFIG") -cpmaddpackage(URI "gh:NVIDIA/stdexec#770f7959142c2446319f642c82aed8b07aea3f86" NAME "stdexec" VERSION 0.11 FIND_PACKAGE_ARGUMENTS "CONFIG" OPTIONS "STDEXEC_BUILD_TESTS OFF" "STDEXEC_BUILD_EXAMPLES OFF" "STDEXEC_ENABLE_ASIO ON" "CMAKE_SKIP_INSTALL_RULES ${CMAKE_SKIP_INSTALL_RULES}" +cpmaddpackage(URI "gh:NVIDIA/stdexec#138e136fa4b93e7e096a4968eaac1b0c94f0d255" NAME "stdexec" VERSION 0.11 FIND_PACKAGE_ARGUMENTS "CONFIG" OPTIONS "STDEXEC_BUILD_TESTS OFF" "STDEXEC_BUILD_EXAMPLES OFF" "STDEXEC_ENABLE_ASIO ON" "CMAKE_SKIP_INSTALL_RULES ${CMAKE_SKIP_INSTALL_RULES}" ) cpmaddpackage(URI "gh:Tradias/asio-grpc@3.5.0" FIND_PACKAGE_ARGUMENTS "CONFIG" VERSION 3.4.0) cpmaddpackage(URI "gh:nlohmann/json@3.12.0" FIND_PACKAGE_ARGUMENTS "CONFIG" NAME "nlohmann_json") From f1e8a87aa3a55357cbeea4460371e93c4eb17099 Mon Sep 17 00:00:00 2001 From: Mathis Logemann <13556116+mathisloge@users.noreply.github.com> Date: Mon, 6 Oct 2025 18:04:36 +0200 Subject: [PATCH 4/4] fix(probeqt): adapt qt scheduler to latest stdexec concepts --- libs/probeqt/impl/qtstdexec.hpp | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/libs/probeqt/impl/qtstdexec.hpp b/libs/probeqt/impl/qtstdexec.hpp index e553cb4c..f08ec3f3 100644 --- a/libs/probeqt/impl/qtstdexec.hpp +++ b/libs/probeqt/impl/qtstdexec.hpp @@ -21,6 +21,8 @@ class QThreadOperationState; class QThreadScheduler { public: + using scheduler_concept = stdexec::scheduler_t; + explicit QThreadScheduler(QThread *thread) : thread_(thread) {} @@ -34,7 +36,7 @@ class QThreadScheduler { QThread *thread; template - auto query(stdexec::get_completion_scheduler_t) const noexcept + auto query(stdexec::get_completion_scheduler_t) const noexcept -> QThreadScheduler { return QThreadScheduler{thread}; } @@ -53,7 +55,7 @@ class QThreadScheduler class QThreadSender { public: - using is_sender = void; + using sender_concept = stdexec::sender_t; using completion_signatures = stdexec::completion_signatures; @@ -66,15 +68,15 @@ class QThreadScheduler return thread_; } - DefaultEnv query(stdexec::get_env_t) const noexcept + auto get_env() const noexcept -> DefaultEnv { return {thread_}; } - template - QThreadOperationState connect(Recv &&receiver) + template + QThreadOperationState connect(Receiver receiver) { - return QThreadOperationState(std::forward(receiver), thread()); + return QThreadOperationState(std::move(receiver), thread()); } private: @@ -137,13 +139,13 @@ class QObjectSender } }; - DefaultEnv query([[maybe_unused]] stdexec::get_env_t env) noexcept + auto get_env() const noexcept -> DefaultEnv { return {obj_->thread()}; } public: - using is_sender = void; + using sender_concept = stdexec::sender_t; using completion_signatures = stdexec::completion_signatures;