Repository navigation
Remove the re-exports of stdexec's tag_invoke - #7973
Conversation
stdexec dropped tag_invoke in NVIDIA/stdexec@49edf9a6a0, so these using-declarations break the build against current stdexec. Nothing in HPX uses the stdexec_non_standard_tag_invoke namespace. Signed-off-by: Hartmut Kaiser <[email protected]>
|
No actionable comments were generated in the recent review.
|
| Layer / File(s) | Summary |
|---|---|
Remove exported aliases libs/core/execution_base/include/hpx/execution_base/stdexec_forward.hpp |
Removes the tag_invoke, tag_invoke_result, nothrow_tag_invocable, and tag_invocable aliases from stdexec_non_standard_tag_invoke. The adjacent stdexec_internal aliases remain. |
Estimated code review effort: 1 (Trivial) | ~5 minutes
Change: Bug fix
Possibly related issues
- Issue 7547 describes removal of
tag_invokecustomization as a breaking change; this PR removes HPX re-exports of stdexectag_invokeAPIs.
Possibly related PRs
- TheHPXProject/hpx#7560: Documents the removal of
tag_invokecustomization as an HPX 2.0.0 breaking change.
Suggested labels: category: API
Suggested reviewers: isidorostsa, charan-003
Merge Risk: 
Minimal · up to 7a38f
-
The intended API removal has no identified HPX build dependency or unresolved merge-blocking issue.
Pre-merge checks: 
5
-
Full details: Docstring Coverage
-
Explanation
No eligible functions found in the changed files. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff with cyclomatic complexity of at least 2. Documentation-only edits and deletions within surviving functions are included; unchanged diff context and fully deleted functions are excluded. Analyzed 0 functions across 0 files.
-
Finishing Touches
-
Generate docstrings
-
- Commit to this branch
- Create a new PR
Generate unit tests (beta)
-
- Commit to this branch
- Create a new PR
-
- Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.
Up to standards ✅🟢 Issues
|
stdexec dropped
tag_invokein NVIDIA/stdexec@49edf9a6a0 ("drop all support fortag_invoke").stdexec_forward.hppstill re-exportsstdexec::tag_invoke,tag_invoke_result,tag_invocableandnothrow_tag_invocableinhpx::execution::experimental::stdexec_non_standard_tag_invoke, so every file that includes it fails to compile against current stdexec. Nothing in HPX uses that namespace, so this PR removes it.With this change HPX 2.0.0 builds against stdexec 1d58877ad8 (MSVC on Windows and GCC 12 on Linux, full builds with the distributed runtime), and the execution and execution_base unit tests pass with GCC 12. The same change is applied as a patch in the vcpkg port of HPX 2.0.0, which now uses vcpkg's stdexec port (microsoft/vcpkg#54814). It doesn't change anything with the stdexec revision HPX currently uses.
Code outside HPX that used
hpx::execution::experimental::stdexec_non_standard_tag_invokehas to use stdexec's own customization mechanism (member functions) instead; with current stdexec,tag_invokedoesn't exist anymore anyway.