Skip to content

Streamline release process #239

@DaniBodor

Description

@DaniBodor

The release process currently works as described in the documentation, but it is somewhat tedious and requires many steps/clicks, etc.

We discussed streamlining this process as follows:

  • create a dev or development branch, which will be the standard working branch for creating new features, etc
    • this will not be the formal "GitHub default branch", as that would have some unwanted side-effects.
    • this means that PRs will by default merge into main, which needs to be manually changed to dev (reviewers, be aware!)
    • hotfixes, improved documentation of existing code, etc can be merged directly into main.
  • create a release action, which goes through all the steps for making a release
    • this probably involves one generic action for most of the steps, and three separate manually triggered trigger-actions for major, minor, patch updates.
    • alternatively, it could be triggered whenever a merge to main was made (and a python file was changed/added), but it's unclear how the semantic version level would be detected.
      • one option would be to require (via a separate action) a bumpversion change to be done in any PR that wants to merge to main.
    • auto-generated release notes can be manually edited after publishing
    • if dev is merged into main, we'd want main to be automatically merged back into dev.
      • Not clear what would happen if a hotfix is merged into main that bypasses dev.

We will probably heavily rely on chatgpt to create this action.

@psomhorst , anything to add to this?

Metadata

Metadata

Assignees

Labels

ci/cdContinuous intergration/development

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions