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

feat: automate use of mkreleaselog #12199

Closed
wants to merge 3 commits into from

Conversation

laurentsenta
Copy link
Contributor

Related Issues

Fix #12162

Proposed Changes

  • Update mkreleaselog to generate changelog in the format of the current CHANGELOG.md file (with headings, etc)
  • Disable changelog generation for the lotus project, only generate submodules (see related note)
  • Update release.yml to insert that changelog in the right-ish location

Additional Info

💣 Setting this into draft and targeting @galargh's branch for now so we can sync on the work

Checklist

Before you mark the PR ready for review, please make sure that:

  • Commits have a clear commit message.
  • PR title is in the form of of <PR type>: <area>: <change being made>
    • example: fix: mempool: Introduce a cache for valid signatures
    • PR type: fix, feat, build, chore, ci, docs, perf, refactor, revert, style, test
    • area, e.g. api, chain, state, mempool, multisig, networking, paych, proving, sealing, wallet, deps
  • Update CHANGELOG.md or signal that this change does not need it.
    • If the PR affects users (e.g., new feature, bug fix, system requirements change), update the CHANGELOG.md and add details to the UNRELEASED section.
    • If the change does not require a CHANGELOG.md entry, do one of the following:
      • Add [skip changelog] to the PR title
      • Add the label skip-changelog to the PR
  • New features have usage guidelines and / or documentation updates in
  • Tests exist for new functionality or change in behavior
  • CI is green

@laurentsenta laurentsenta marked this pull request as draft July 9, 2024 09:08
@laurentsenta laurentsenta requested a review from galargh July 9, 2024 09:08
@laurentsenta
Copy link
Contributor Author

This is what the outputs looks like:


filecoin-project/go-state-types (v0.14.0-rc1 -> v0.14.0-rc2)

Others

Contributors

Contributor Commits Lines ± Files Changed
Peter Rabbitson 6 +488/-2603 40
Rod Vagg 17 +1236/-738 38
galargh 16 +609/-414 29
Aarsh Shah 4 +508/-87 12
Jennifer Wang 1 +120/-120 3
Jiaying Wang 2 +161/-3 2
Phi-rjan 5 +83/-43 24
Laurent Senta 3 +70/-8 3
ZenGround0 1 +69/-0 1
Steve Loeppky 1 +42/-25 1
Mikers 1 +63/-0 4
aarshkshah1992 1 +19/-4 1
Piotr Galar 3 +3/-4 3
fsgerse 1 +1/-2 1
SuiYuan 1 +1/-1 1
Hubert 1 +0/-1 1

Comment on lines +180 to +182
if [[ -z "$insertion_point" ]]; then
cat release-notes.md >> CHANGELOG.md
else
Copy link
Member

Choose a reason for hiding this comment

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

I think this case might be better to fatally fail with than append to the tail

Comment on lines +131 to +132
new_features=$(echo "$content" | grep -i '^- feat:' || true)
improvements=$(echo "$content" | grep -i '^- fix:' || true)
Copy link
Member

@rvagg rvagg Jul 11, 2024

Choose a reason for hiding this comment

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

it would be awesome to fit breaking changes into this too (feedback from @rjan90 @aarshkshah1992 @ZenGround0 would be good on whether they're comfortable with full CC style would be good):

Suggested change
new_features=$(echo "$content" | grep -i '^- feat:' || true)
improvements=$(echo "$content" | grep -i '^- fix:' || true)
new_features=$(echo "$content" | grep -i '^- feat:' || true)
improvements=$(echo "$content" | grep -i '^- fix:' || true)
breaking_changes=$(echo "$content" | grep -iE '^- [^:]+!:' || true)

new_features=$(echo "$content" | grep -i '^- feat:' || true)
improvements=$(echo "$content" | grep -i '^- fix:' || true)

used=$(echo -e "$new_features\n$improvements")
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
used=$(echo -e "$new_features\n$improvements")
used=$(echo -e "$new_features\n$improvements\n$breaking_changes")

echo "$new_features"
echo
fi

Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
if [[ -n "$breaking_changes" ]]; then
echo "### Breaking Changes"
echo
echo "$breaking_changes"
echo
fi

@galargh
Copy link
Contributor

galargh commented Jul 11, 2024

#12096 now supersedes the exploration performed here. TLDR; we found it to be more efficient to combine the outputs of mkreleaselog + CHANGELOG.md entries to create proposed released notes.

@galargh galargh closed this Jul 11, 2024
@rvagg rvagg deleted the ipdx/with-mkreleaselog branch July 16, 2024 10:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants