Skip to content
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

Automate release notes #200

Merged
merged 6 commits into from
Nov 29, 2024
Merged

Automate release notes #200

merged 6 commits into from
Nov 29, 2024

Conversation

Jonas-Isr
Copy link
Member

Context

AI/ai-sdk-java-backlog#94

We need release notes now that we have an initial version publicly available. For this, I copied the way Cloud SDK is doing their release notes:

  • There is now a release-notes.md file in under docs/release-notes. In a PR, you can add something to this file. This file functions as a collection of all release notes since the last (minor or major) release.
  • (Once a new minor or major version is published) There is a file named release-notes-0-to-14.mdx under docs/release-notes that captures all the release notes since the last major release. After every 15 minor releases, a new file is used to not avoid making this file too long (the next files will then be called release-notes-15-to-29.mdx and so on).
  • In the Prepare Release workflow, content from release-notes.md is copied to the appropriate release-notes-X-to-Y.mdx file. After the release version is created, a new (empty) release-notes.md is created for the next version.

Feature scope:

  • GitHub release contains release notes (GA itself can be a one time manual job)
    • To make this work for the GA, we could add release note into release-notes.md.
  • Process is automated (At least the step of collecting the release notes for the current release should be automated)
  • Concept for how diff between latest release and current status can be viewed
    • This can be seen in the release-notes.md file.

Definition of Done

  • Functionality scope stated & covered
  • Tests cover the scope above
  • Error handling created / updated & covered by the tests above
  • Aligned changes with the JavaScript SDK
  • Documentation updated
  • Release notes updated

@Jonas-Isr Jonas-Isr added the please-review Request to review a pull-request label Nov 28, 2024
@Jonas-Isr
Copy link
Member Author

Successful run in my fork: /~https://github.com/Jonas-Isr/ai-sdk-java-test/pull/16

Comment on lines +16 to +40
unchanged_sections = [
"""### 🚧 Known Issues

-

""",
"""### 🔧 Compatibility Notes

-

""",
"""### ✨ New Functionality

-

""",
"""### 📈 Improvements

-

""",
"""### 🐛 Fixed Issues

-
"""]
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

(Comment/Suggestion)

I wonder whether this can be replaced with a regex.
such that we don't have to maintain the categories by hand in this python script.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It has never needed maintenance in the Cloud SDK, I think it's fine

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am not experienced with regexes. Would that really be less maintenance effort than having an explicit list?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also note, that you can always add your own custom categories in release_notes.md and they will be copied. This here only ensures that no empty category (of the 4 suggested ones in the template) is copied over into the release_notes_X_to_Y files.

@Jonas-Isr Jonas-Isr merged commit 2b4e484 into main Nov 29, 2024
5 checks passed
@Jonas-Isr Jonas-Isr deleted the automate-release-notes branch November 29, 2024 12:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
please-review Request to review a pull-request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants