This is an archive of the discontinued LLVM Phabricator instance.

[libc++] Encode the version in the ReleaseNotes file
ClosedPublic

Authored by ldionne on Jul 11 2023, 3:43 PM.

Details

Reviewers
Mordante
Group Reviewers
Restricted Project
Commits
rGb88db47bd208: [libc++] Encode the version in the ReleaseNotes file
Summary

This way, we don't need to remove the contents of the ReleaseNotes file
after the branch. This should make it much easier and natural to cherry-pick
changes onto the release branch. Typically, we need two patches for those.
First, we need the code changes against main, and then we need a patch
that updates the release notes on the just-created branch.

By versioning the release notes, it becomes easy to author a change
against main that targets a just-branched LLVM release by simply
adding it to the release notes for the right version. This has been
a pain point in previous releases.

Diff Detail

Event Timeline

ldionne created this revision.Jul 11 2023, 3:43 PM
Herald added a project: Restricted Project. · View Herald TranscriptJul 11 2023, 3:43 PM
ldionne requested review of this revision.Jul 11 2023, 3:43 PM
Herald added a project: Restricted Project. · View Herald TranscriptJul 11 2023, 3:43 PM
Herald added a reviewer: Restricted Project. · View Herald Transcript
ldionne added inline comments.Jul 11 2023, 3:44 PM
libcxx/docs/ReleaseProcedure.rst
19

This is open to bikeshedding, I'm happy to use a different scheme. We could do libcxx/docs/release-notes/<VERSION>.rst to avoid polluting libcxx/docs/.

ldionne updated this revision to Diff 539743.Jul 12 2023, 2:39 PM

Update with suggested naming scheme.

Mordante accepted this revision.Jul 18 2023, 8:28 AM
Mordante added a subscriber: Mordante.

LGTM, can you make sure the release managers are aware of these changes?

libcxx/docs/Helpers/ReleaseNotesTemplate.rst
53 ↗(On Diff #539940)

Can you add a note that this should be copied from the last release?

This revision is now accepted and ready to land.Jul 18 2023, 8:28 AM
ldionne marked an inline comment as done.Jul 18 2023, 11:06 AM
ldionne added a subscriber: thieta.

LGTM, can you make sure the release managers are aware of these changes?

CC @thieta for awareness.

libcxx/docs/Helpers/ReleaseNotesTemplate.rst
53 ↗(On Diff #539940)

I added this note:

NOTE: THIS SHOULD BE POPULATED FROM THE PREVIOUS RELEASE'S UPCOMING DEPRECATIONS AND REMOVALS FOR THE NEXT-NEXT RELEASE (IF ANY)
This revision was automatically updated to reflect the committed changes.
ldionne marked an inline comment as done.

ACK. When I branch - do I need to do anything in main or just leave it? I wish we could employ this model everywhere I guess :)

ACK. When I branch - do I need to do anything in main or just leave it? I wish we could employ this model everywhere I guess :)

Just leave the old 17.rst release notes in place. That way, if we have to cherry-pick something to the release/17.x branch, we can make the commit on main but add the release notes to 17.rst and it will cherry-pick like a charm on the release branch.