[libcxx-commits] [PATCH] D150585: [libc++][doc] Updates the tasks to do for a release.

Nikolas Klauser via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Mon May 15 10:56:00 PDT 2023


philnik added inline comments.


================
Comment at: libcxx/docs/ReleaseProcedure.rst:11
+
+Prepare the release
+===================
----------------
Mordante wrote:
> philnik wrote:
> > Maybe also check that GCC is on the latest version?
> I considered that, but left it out on purpose. GCC's release schedule is between releases so there is no nice match with our releases.
> 
> Reconsidering it might make sense to do that in the preparation. For Unicode I also don't intend to wait until we prepare the LLVM release, instead I intend to update once I'm aware of the release. That way we at least won't forget about it.
Yeah, I think it's fine to keep the release preparation phase a bit hand-wavy.


================
Comment at: libcxx/docs/ReleaseProcedure.rst:71
+- Search for test that have ``UNSUPPORTED`` or ``XFAIL`` for the no longer supported version
+- Remove the things listed for removal
+
----------------
Could we also define a single `TODO LLVM xy` style to make it easier to grep for that?


================
Comment at: libcxx/docs/ReleaseProcedure.rst:84-107
+LLVM 18
+-------
+
+* The base template for ``std::char_traits`` has been marked as deprecated and
+  will be removed in LLVM 18. If you are using ``std::char_traits`` with types
+  other than ``char``, ``wchar_t``, ``char8_t``, ``char16_t``, ``char32_t`` or
+  a custom character type for which you specialized ``std::char_traits``, your code
----------------
Mordante wrote:
> philnik wrote:
> > I don't think we want to list the removals here. We already have the release notes for that.
> We have, but somehow things from the list are removed by the release managers after branching. Based on your char_traits question and D150580 we need to have a better way to keep track of this. I'm open to other suggestions.
Wouldn't it be enough to communicate to the release managers that they shouldn't touch the `Upcoming Deprecations and Removals` list? Or maybe move that section into a different file that is included there? (IDK if that's possible with Sphinx) I don't think we had that section when `_LIBCPP_ABI_OLD_LOGNORMAL_DISTRIBUTION` was introduced, and I think the section already massively helps with removing stuff in-time.


================
Comment at: libcxx/docs/ReleaseProcedure.rst:87-94
+* The base template for ``std::char_traits`` has been marked as deprecated and
+  will be removed in LLVM 18. If you are using ``std::char_traits`` with types
+  other than ``char``, ``wchar_t``, ``char8_t``, ``char16_t``, ``char32_t`` or
+  a custom character type for which you specialized ``std::char_traits``, your code
+  will stop working when we remove the base template. The Standard does not
+  mandate that a base template is provided, and such a base template is bound
+  to be incorrect for some types, which could currently cause unexpected
----------------
Mordante wrote:
> philnik wrote:
> > Where is this coming from?
> https://releases.llvm.org/16.0.0/projects/libcxx/docs/ReleaseNotes.html#deprecations-and-removals
Could you re-add this to the release notes?


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D150585/new/

https://reviews.llvm.org/D150585



More information about the libcxx-commits mailing list