-
Notifications
You must be signed in to change notification settings - Fork 1.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Q4 2024 priorities #4560
Comments
Time to reveal all the secret plans for the Q3 2024. |
I wonder whether this issue would be reused if nothing gets changed for Q3. 😿 |
Good idea, I'm a lazy kitty. 🐈 💤 |
I would tell that it's even more convenient when the same ticket is reused, so you can subscribe for this ticket only if you want to follow what's new in priorities ;) |
@jovibor Hi @MahmoudGSaleh, could you ask your bosses to use the latest version of the STL for VS 17.12 Preview 3? I know that new changes are now for VS Next, but VS 17.12 is the last version for VS 2022 and the last version for Windows 7, so it would be great if we could add all available features to it. We have a precedent for this in the past; we did the same for some VS version before CppCon, if I remember correctly. I also found some similar commits: And we would have a chance to merge P2502R2 : Synchronous Coroutine Generator For Ranges to VS 2022... |
FWIW, there will be a VS 17.13. If we can get |
Great news @CaseyCarter! Thank you for the info. I was confused by |
LGTM! I have a few questions on ABI which are related to the potential use of
|
So, to clear the air. |
We only learned for sure that there would be a VS 2022 17.13 very recently - and as soon as that happened, I updated the Changelog to remove the placeholder. I deliberately said "Meow" and not "Next" in an attempt to convey "we don't know whether this will be 17.x or 18.0". Feel free to ask for clarification if you're confused about release plans - we try to share as much as possible.
After we're feature-complete, but not immediately after (we're not making that mistake again). I believe I'd prefer N+2: if we reach feature-completeness in Update N, then adding That said, if we want to mess with ABI, there's nothing stopping us from doing so now (especially now that we have Clang 18). Major changes should be front-loaded.
As far as I know (and, having been here 17+ years, I would hope that I know), we don't officially support Intel's (new) compiler. We don't go out of our way to break it, and we'll fix unintentional egregious breakage when it's easy (including 80-bit We do support CUDA (and theoretically we should support all of its Standard modes, although we don't yet test basic "does this even compile all headers" beyond C++14; I believe it currently supports up to C++20). We haven't made an exception for CUDA in our ABI compatibility promises. I remain very unclear on how the CUDA build process works - the way in which they send most code to the host compiler (i.e. MSVC) after their front-end splits out code for the device compiler (GPU) means that I think something like no-unique-address wouldn't be "special" for CUDA. I could easily be wrong.
To clarify:
At this time, we don't have management approval to begin work on vNext. It hasn't been rejected or anything, but we've been so overloaded with other priorities that we've paused making the case for it. (This is unlike open-sourcing VCRuntime, which we've abandoned any attempt at.) |
It would mean that there would be two toolset version in support simultaneously, if I get it right? |
The answer is right after the quoted part:
|
Still, it's unclear. |
I'll want essentially the same policy that we have for previous VS releases - only security fixes and critical bugfixes. VS 2017 15.9.x and VS 2019 16.11.x are still being serviced (they're up to 15.9.66 and 16.11.40) but we haven't touched them with STL changes in a very long time. DRs and LWG issue resolutions are generally not critical to backport. A bug has to be really bad for us to consider servicing it to a previous 17.x release, much less a 16.11.x release etc. The goal is to avoid double work as much as possible. It really all comes out of the same pool. Over the years we've learned how to work with maximum efficiency (avoiding ultimately wasted work like backporting, and avoiding shipping buggy code as much as possible), and I don't want to start compromising that. We can barely keep up with Standardization as it is. |
But how that would work without having compiler-dependent features? |
Compiler-dependent C++23/26 features will remain blocked (unless and until Clang implements any necessary builtins). There's no rule that dogs can't play basketball and no rule that we can't start C++26 library-only features until literally every C++23 feature is done. 🐕 🏀 |
You have a list? |
Most of that is in 19 or 20. |
In the fourth quarter of 2024, our priorities are:
feature/flat_map
is the multi-collaborator feature branch for both P0429R9<flat_map>
#2910 and P1222R4<flat_set>
#2912If you have questions about our plans for this quarter, feel free to ask them here. (Note that compiler, IDE, etc. priorities are off-topic.)
The text was updated successfully, but these errors were encountered: