Skip to content

Conversation

@Musholic
Copy link
Contributor

Description of the problem being solved:

This PR modify the beta workflow to use release-drafter as a way to get generated changelogs.

It refactors the tweak_changelogs logic (with comments thanks to the AI otherwise it's hard to understand) and handle CRLF issues of the generated changelog since we need to have proper hash generation in the manifest file for the auto-update mechanism.

The workflow is hard to test beforehand (without actually doing a beta release or a release) but I tested a similar version on my Last Epoch fork (of pob1). I should be able to test this particular commit on my fork of pob2 later on.

Let me know if you have questions or remarks

@Musholic
Copy link
Contributor Author

I've tested the beta and release workflow on my fork. I fixed some small issues, and now it looks good.

On the beta branch, it generated this commit Musholic@c42481b

On the release branch, it generated this commit Musholic@e078888

I also checked the generated manifest hashes (of the beta branch) by running manually the python update_manifest.py --in-place command after a fresh clone

@Musholic
Copy link
Contributor Author

I simplified the generation by avoiding the duplication of the logic in release.yml (Should have done that from the start, much better 😅).

So now it generates this commit for the beta branch: Musholic@8034986

And this one for the release branch: Musholic@b29321b

# Remove carriage returns to be able to run the script
sed -i 's/\r$//' .github/tweak_changelogs.sh
chmod +x .github/tweak_changelogs.sh
.github/tweak_changelogs.sh beta
Copy link
Member

Choose a reason for hiding this comment

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

I approved this initially because the release notes themselves look fine, but I think you need to append a hash (or just replace "beta" with the hash) here. When a user hits "Update" in PoB, it only shows the release notes up until the version they already have. Since they will already have "beta", the change log window will look blank. You can test this on your repo by just doing a couple of beta releases (with notes) and updating your PoB from each one

Copy link
Contributor Author

Choose a reason for hiding this comment

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

On my last test, it actually showed the full changelog, because in the manifest the version is something like 0.x.y-hash and in the changelog, it's beta. So since it cannot find the same version, it shows everything. I think it's better than the current way where it shows nothing but there is definitely room for improvement. Imo, this can be improved later

Copy link
Member

Choose a reason for hiding this comment

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

That's only true for the first update, because the next one will be updating beta->beta and will show nothing again. I can't test it for a while to be sure, this is just from looking at the code. If you do a second update in your fork it should show what I mean (or prove me wrong, which is just as good)

Copy link
Contributor Author

Choose a reason for hiding this comment

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

The manifest is updated in another step of the workflow (https://github.com/PathOfBuildingCommunity/PathOfBuilding-PoE2/pull/1363/files#diff-2c779738744716c38feb61cd6164d1d45a2a8d59615a1b867dec46ae7bfd9a44R26), and you can check on the beta release commit Musholic@8034986 (if you load the diff for the manifest file).

"beta" here is only to display it in the changelog, and having "beta" makes the urls actually work correctly since this is the name of an actual branch.

Note that updating the version in the manifest is optional, but I thought it would be interesting to be able to see which beta version someone is running from a screenshot. I can work on a quick fix to at least display the whole beta changelog instead of the whole changelog

Copy link
Member

Choose a reason for hiding this comment

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

I didn't remember that the version comes from the manifest when comparing. With that fact, this PR seems good, we can iterate on it later if things need to change

Copy link
Member

@Wires77 Wires77 left a comment

Choose a reason for hiding this comment

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

Made a comment on the release version in the changelog that needs to be different between each beta release

@Wires77 Wires77 added the enhancement New feature, calculation, or mod label Sep 13, 2025
@Wires77 Wires77 merged commit b036f50 into PathOfBuildingCommunity:dev Sep 13, 2025
2 checks passed
Wires77 added a commit to Wires77/PathOfBuilding that referenced this pull request Oct 30, 2025
Wires77 added a commit to PathOfBuildingCommunity/PathOfBuilding that referenced this pull request Oct 30, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature, calculation, or mod

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants