Closed msimberg closed 1 month ago
Coverage variation | Diff coverage |
---|---|
:white_check_mark: +0.04% (target: -1.00%) | :white_check_mark: 91.67% (target: 90.00%) |
Codacy stopped sending the deprecated coverage status on June 5th, 2024. Learn more
Original PR description:
Draft. For now I've simply updated the existing configurations to use stdexec but ideally we'd have separate configurations.
Opened because the GCC 14 configuration with stdexec has had some failures recently on
split_continuation_clear
(https://gitlab.com/cscs-ci/ci-testing/webhook-ci/mirrors/479009878135925/5304355110917878/-/jobs/7723123972#L165, https://gitlab.com/cscs-ci/ci-testing/webhook-ci/mirrors/479009878135925/5304355110917878/-/jobs/7680430741#L134; added to #191). The sanitizer configurations use clang so may not reproduce the failure, but testing anyway...
I couldn't really make heads or tails of the sanitizer failure. Since it involves ensure_started
and ensure_started
has been removed in the latest P2300 revisions, I've stopped investigating the cause and changed the focus of this PR to use pika's implementation of ensure_started
instead. Thread sanitizer does not report issues with that implementation.
LGTM, maybe update the description to
just | transfer
ortransfer(just())
cause it seems to be the other way around :)
Thanks. Indeed just | transfer
is what I meant. Updated the description.
This PR:
ensure_started
andstart_detached
from pika since they have been removed from P2300 and will likely be removed from stdexec in the future; pika will keep them around longer until somethingasync_scope
-like is a viable replacementtransfer
, renaming it tocontinues_on
as in latest P2300transfer_just
since removed in latest P2300;just | transfer
should be preferredtransfer_when_all
since removed in latest P2300;when_all | transfer
should be preferredcontinues_on
(it's currently calledcontinue_on
in stdexec); an alias is created fromcontinues_on
tocontinue_on
ifcontinues_on
doesn't existI've kept the
transfer
andtransfer_just
tests unchanged still usingtransfer*
so that the aliases are tested. The deprecation warnings are ignored for those tests.