This is an archive of the discontinued LLVM Phabricator instance.

[libc++][doc] Updates the tasks to do for a release.
ClosedPublic

Authored by Mordante on May 15 2023, 9:20 AM.

Details

Summary

This is a followup of the review comments in D144499.

Diff Detail

Event Timeline

Mordante created this revision.May 15 2023, 9:20 AM
Herald added a project: Restricted Project. · View Herald TranscriptMay 15 2023, 9:20 AM
Mordante requested review of this revision.May 15 2023, 9:20 AM
Herald added a project: Restricted Project. · View Herald TranscriptMay 15 2023, 9:20 AM
Herald added a reviewer: Restricted Project. · View Herald Transcript

Thanks for working on improving this!

libcxx/docs/ReleaseProcedure.rst
12

Maybe also check that GCC is on the latest version?

85–108

I don't think we want to list the removals here. We already have the release notes for that.

88–95

Where is this coming from?

Mordante added inline comments.May 15 2023, 10:41 AM
libcxx/docs/ReleaseProcedure.rst
12

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.

85–108

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.

88–95
philnik added inline comments.May 15 2023, 10:55 AM
libcxx/docs/ReleaseProcedure.rst
12

Yeah, I think it's fine to keep the release preparation phase a bit hand-wavy.

72

Could we also define a single TODO LLVM xy style to make it easier to grep for that?

85–108

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.

88–95

Could you re-add this to the release notes?

Thanks for working on this!

libcxx/docs/ReleaseProcedure.rst
34
43

If we have annotations like LLVM RELEASE bump, does it make sense to carry that list around? Duplicating the information IMO is going to create confusion and they'll get out of sync, so I think we should pick one.

CC @tstellar

72

I like that! So the documentation could say "Search for TODO(LLVM-<version>)" maybe? I don't care about how it's spelled, but we could document it right here and start doing it right away.

88–95

Instead, I think what we should do here is have version-specific release notes and keep the latest N versions in the repo (probably N = 1). That would actually solve other problems as well, such as merge conflicts during the early branching when we cherry-pick stuff to the release branch.

Then we could easily obtain this information without having to copy-paste anything, which is going to be error-prone.

Mordante updated this revision to Diff 523116.May 17 2023, 11:05 AM
Mordante marked 7 inline comments as done.

Addresses review comments and use new style TODO for existing items.

philnik accepted this revision as: philnik.May 17 2023, 11:17 AM

LGTM % nit! Leaving final approval to Louis.

libcxx/utils/libcxx/test/features.py
29

Same below.

ldionne accepted this revision.May 23 2023, 9:08 AM
ldionne added inline comments.
libcxx/docs/ReleaseProcedure.rst
80–89

I am not sure that we should keep this section now.

This revision is now accepted and ready to land.May 23 2023, 9:08 AM
Mordante marked 2 inline comments as done.May 23 2023, 10:00 AM
Mordante added inline comments.
libcxx/docs/ReleaseProcedure.rst
12

I added a note, but more generic for all our compilers.

43

I agree if we have that we can link that, just to make it easier to find for us.

I originally copied this from the contribution page.

72

I used your suggestion and adjusted the existing TODOs.

80–89

This is indeed an unwanted left over.

85–108

For now I just added an item for us to copy it back.

88–95

For now I moved it to the release notes under a LLVM 18 section. I think it would make sense to do

Upcoming Deprecations and Removals
----------------------------------

LLVM 18
~~~~~~~

... list of items

LLVM 19

... list of items

I think we can just copy that after the release managers removed it then we don't need to keep N files.

This revision was automatically updated to reflect the committed changes.
Mordante marked an inline comment as done.