Thanks to visit codestin.com
Credit goes to github.com

Skip to content

feat: add changelog auto-generation #207

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

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

daynin
Copy link
Member

@daynin daynin commented Jun 3, 2021

Here a GH action config for changelog generation. It'll help to create release notes for every pushed tag (here you can see how it works https://github.com/github-tools/github-release-notes/releases).

And by changing a source of the racketscript package here https://pkgs.racket-lang.org/package/racketscript from this pattern https://github.com/β€Ήuserβ€Ί/β€Ήpackageβ€Ί.git to this one https://github.com/β€Ήuserβ€Ί/β€Ήpackageβ€Ί.git#tag (see "GitHub Deployment" here https://docs.racket-lang.org/pkg/getting-started.html#%28part._github-deploy%29) we'll allow to install a particular version of racketscript.

Resolves: https://github.com/vishesh/racketscript/issues/193

But to make it work @vishesh should create CHANGELOG_TOKEN (see https://github.com/github-tools/github-release-notes#setup) and change the source path of the package.

@vishesh
Copy link
Member

vishesh commented Jun 6, 2021

Umm, sorry about not looking at it sooner. Looks good to me. What I don't understand is why it requires token. How will Github workflow get the token? Obv we can't make it part of the repository itself, as its supposed to be private (the token gives access to all private repos as well).

@vishesh
Copy link
Member

vishesh commented Jun 6, 2021

It appears there is GITHUB_TOKEN which is automatically generated and can be used here instead, and if I understand correctly, it just has current repository in its scope instead of wider scoped private token I can create. However, I'm still little anxious about PRs/CI being able to change things (from security pov) which you don't see in the diff itself.

@daynin
Copy link
Member Author

daynin commented Jun 7, 2021

Oh, you're right. But let separate two different issues:

  1. The first one is about potential access to private repos. This issue can be solved by creating an organization in Github for RacketScript. Since we'll have in that organization only public repos we won't need to care about private repositories and (looks like) we'll be able to better control keys (because in organization settings it's possible to specify repositories for tokens). And moreover, it'll be useful for some additional repositories in the future like a website repository for RacketScript or some additional tools.
  2. The second issue is about trust in Github Release Notes actions. So here we can only analyze the source code of a particular version of the project and check that it doesn't do anything else except generating release notes.

If we aren't ready or don't want to do that right now, we can get rid of that github action and write changelogs manually (or don't write them at all) and use tags for releases.

I'm not sure which option is better. @vishesh what do you think?

@vishesh
Copy link
Member

vishesh commented Jun 10, 2021

I'm just gonna let this PR sit around for some time, until we can get to thinking a bit more about it. Apart from the points you mentioned, another problem is that none of us are following any specific commit guidelines (log message conventions, squashing commits, when to do releases etc...). I totally would love to have all that, along with proper processes, but once we have some pace and features/fixes in.

But if everyone else feels strongly about having this sooner, we can get this in.

@daynin
Copy link
Member Author

daynin commented Jun 10, 2021

I think we can add this automation later when we'll be ready. It's not a problem at all

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.

Add versioning system
2 participants