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

Configure Semantic Release #286

Draft
wants to merge 4 commits into
base: master
Choose a base branch
from
Draft

Configure Semantic Release #286

wants to merge 4 commits into from

Conversation

kalzoo
Copy link
Collaborator

@kalzoo kalzoo commented Nov 17, 2021

  • GitHub Actions:
    • master (to be verified)
    • dry-run off master
  • Documentation
  • Create and target rc branch

Note: this will need credentials to be configured before it can be expected to work on a protected branch (ie master)

@kalzoo kalzoo self-assigned this Nov 17, 2021
@kalzoo kalzoo marked this pull request as draft November 17, 2021 06:45
@cetanu
Copy link
Collaborator

cetanu commented Dec 15, 2021

Nice. Do you need me to do anything to push this along?

@kalzoo
Copy link
Collaborator Author

kalzoo commented Dec 15, 2021

Nice. Do you need me to do anything to push this along?

I had intended to get one more release out following the current pattern before making the switch, so it's a fresh start. That needs the optional PR to be merged, which is blocked on a bug in code generation in its pipeline.

@boukeversteegh
Copy link
Collaborator

Nice. Do you need me to do anything to push this along?

I had intended to get one more release out following the current pattern before making the switch, so it's a fresh start. That needs the optional PR to be merged, which is blocked on a bug in code generation in its pipeline.

Hi @kalzoo ! This is a great feature!

Over at ts-proto release bot is also used, and it's amazing how quick things move there.

To weigh in positively on this PR, I would list the following benefits.

Merged PR's are immediately released as a new version

This seems like a "nice to have" to save some effort of releasing, but it is so much more than that.

It changes the entire development and user experience.

  • Benefits for users
    • Get the latest features more quickly
    • Can upgrade more incrementally. If the latest version causes issues you can try one before, and still get some new features.
    • Easier to validate a new release, as they are smaller
    • In case of breaking changes, you can update your code in smaller increments
  • Benefits for all contributors
    • More accurate issue reports: users can tell us more precisely which changes broke their code
    • Contributors can work on top of the latest public release branch, rather than a non battle-tested pre-release branch
  • Benefits for PR authors:
    • More satisfaction when your work is released quickly
    • When issues are reported, it's much more quickly, so you may still remember implementation details, and as you probably haven't moved on to different things yet, you may still have time to fix it.
    • Can reference the official project package more quickly instead of personal fork
  • Benefits for the project
    • More motivated PR authors
    • Quicker feedback from users
    • Better feedback
    • Quicker fixes from PR authors

@MicaelJarniac
Copy link
Contributor

What's the status of this? What still needs to be done?

@MicaelJarniac
Copy link
Contributor

MicaelJarniac commented Jul 6, 2023

Wouldn't it be better to use another configuration file for it, like a .releaserc.yaml?
https://github.com/semantic-release/semantic-release/blob/master/docs/usage/configuration.md#configuration-file

The YAML format is already being used here anyways, by .pre-commit-config.yaml and .readthedocs.yml at least, as well as the GitHub Actions workflows, unlike JSON.

And package.json seems to be related to Node packages, which isn't the case for this project, while .releaserc.yaml is just for configuring the release automation.

@cetanu cetanu self-assigned this Oct 16, 2023
@Gobot1234
Copy link
Collaborator

@cetanu https://github.com/compilerla/conventional-pre-commit might be a useful add here fwiw

@cetanu
Copy link
Collaborator

cetanu commented Oct 18, 2023

I was looking at this the other day and thought it might be good to merge this as the very first thing right after the 2.0 release, and then we can move forward from a clean slate

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.

5 participants