microsoft / microsoft/go

Automatically create crypto backends release branch and tags

Open
#2,288 1 comment 2 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Go
Stars
431
Forks
44
Avg merge
21h 18m
Merged PRs (30d)
30

Description

The first time a crypto backend needs to get a fix backported into a Go minor release someone has to go to the backend repo and create a release branch from the commit that was used the create that release. This process is manual and error prone, and using the wrong commit is really disruptive.

I propose that the release process automatically creates a new release branch on every crypto backend at the correct commit, taken from the src/go.mod, the first time a minor release is created (that is, go1.x.0). While here, it could also push a tag in the form of go1.x, being x the Go toolchain minor release. That would not follow semantic version, but that's fine, our main use case is the Go toolchain, not external uses. Having the tag would make it easier to manually, or automatically, compare what changes in between two Go minor versions.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by tracing the release process and how the crypto backend repository and src/go.mod identify the commit for a Go minor release. Verify the first go1.x.0 release creates the backend release branch from the correct commit and adds the corresponding go1.x tag, without recreating them on later releases.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
cryptography, release
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.