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

docs: update release and publishing #529

Merged
merged 9 commits into from
Apr 30, 2021
Merged

Conversation

TarikGul
Copy link
Member

@TarikGul TarikGul commented Apr 29, 2021

This PR aims to update the documentation around releasing a new release of sidecar.

closes: #527

Copy link
Contributor

@emostov emostov left a comment

Choose a reason for hiding this comment

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

Thanks, looks good; just a few suggestions. (Hopefully we will have a more automated release process in the near future)

README.md Outdated Show resolved Hide resolved
README.md Outdated Show resolved Hide resolved
README.md Outdated Show resolved Hide resolved
README.md Outdated Show resolved Hide resolved
README.md Outdated Show resolved Hide resolved
README.md Show resolved Hide resolved
TarikGul and others added 5 commits April 29, 2021 14:01
Co-authored-by: Zeke Mostov <32168567+emostov@users.noreply.github.com>
Co-authored-by: Zeke Mostov <32168567+emostov@users.noreply.github.com>
Co-authored-by: Zeke Mostov <32168567+emostov@users.noreply.github.com>
Co-authored-by: Zeke Mostov <32168567+emostov@users.noreply.github.com>
Co-authored-by: Zeke Mostov <32168567+emostov@users.noreply.github.com>
@dvdplm
Copy link
Contributor

dvdplm commented Apr 30, 2021

@maciejhirsz PTAL
@niklasad1 same for you; I believe there's a release to be made on Monday so make sure these instructions work for you.

README.md Outdated Show resolved Hide resolved

4. Update the version in the package.json (this is very important for releasing on NPM).

5. Update `CHANGELOG.md` by looking at merged PRs since the last release. Follow the format of previous releases.
Copy link
Member

Choose a reason for hiding this comment

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

do we got a script to get all PRs in the CHANGELOG or how's that performed?

Copy link
Member Author

Choose a reason for hiding this comment

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

Currently we do not, we update it manually unfortunately. Earlier on with sidecar there was an issue with standard-version which started to cause inaccuracies with changelog automation. This is something we still need to fix, and probably should make priority soon.

The solution we had was to deprecate the current changelog and start a new one. We are tracking that issue here.

Copy link
Member Author

Choose a reason for hiding this comment

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

Fortunately though, because we release every week, there isn't a lot of PR's to actually track and log. Usually just the updated dep's, and one or two PR's.

Co-authored-by: Niklas Adolfsson <niklasadolfsson1@gmail.com>
Copy link
Contributor

@maciejhirsz maciejhirsz left a comment

Choose a reason for hiding this comment

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

LGTM

@TarikGul TarikGul merged commit da33c7f into master Apr 30, 2021
@TarikGul TarikGul deleted the tarik-updates-release-docs branch April 30, 2021 12:53
Copy link
Contributor

@dvdplm dvdplm left a comment

Choose a reason for hiding this comment

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

I think we need a Notion page where we keep a "internal use" checklist of people and organizations to notify for new releases (and in particular who to call when there's a fire).

@@ -270,30 +270,65 @@ Need help or want to contribute ideas or code? Head over to our [CONTRIBUTING](C

## Note for maintainers

* Commits && Releases && Publishing
Copy link
Contributor

Choose a reason for hiding this comment

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

What's up with the double ampersand?

* @polkadot/apps-config [release notes](https://github.com/polkadot-js/apps/releases)
* @polkadot/util-crypto [release notes](https://github.com/polkadot-js/common/releases)

Note: Every monday the polkadot-js ecosystem will usually come out with a new release. It's important that we keep up, and read the release notes for any breaking changes, or high priority updates.
Copy link
Contributor

Choose a reason for hiding this comment

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

Would be good to mention where to look for these updates.


5. Update `CHANGELOG.md` by looking at merged PRs since the last release. Follow the format of previous releases.

* Make sure to note if it is a high upgrade priority (e.g. it has type definitions for an upcoming runtime upgrade to a Parity maintained network).
Copy link
Contributor

Choose a reason for hiding this comment

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

It would be good to keep a checklist of who to notify when we release high priority stuff (likely on to be kept on Notion, but a mention here is good also).


* Make sure to note if it is a high upgrade priority (e.g. it has type definitions for an upcoming runtime upgrade to a Parity maintained network).

6. Commit with ex: `chore(release): 5.0.1`, then push your release up, make a PR, get review approval, then merge.
Copy link
Contributor

Choose a reason for hiding this comment

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

What does "push your release" mean? Do you mean the name-vx.y.z branch?

ℹ Run `git push --follow-tags origin master && npm publish` to publish
### Step 1 - Preparation

1. Checkout a branch `name-v5-0-1`. When deciding what version will be released it is important to look over 1) PRs since the last release and 2) release notes for any updated polkadot-js dependencies as they may affect type definitions.
Copy link
Contributor

Choose a reason for hiding this comment

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

s/name-v5-0-1/name-vMM-mm-pp


6. Commit with ex: `chore(release): 5.0.1`, then push your release up, make a PR, get review approval, then merge.

* NOTE: Before pushing up as a sanity check run the 3 following commands and ensure they all run with zero errors. There is one exception with `yarn test` where you will see an `InternalServerError`, that is alright. As long as all the test suites pass.
Copy link
Contributor

Choose a reason for hiding this comment

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

s/alright/expected/

1. Make sure the tag reflects your corresponding version, and run:

```bash
git tag -s v5.0.1
Copy link
Contributor

Choose a reason for hiding this comment

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

s/v5.0.1/vMM.mm.pp/ where MM is the major, mm the minor and pp the patch release.

git push origin v5.0.1
```

2. Go to tags on github, inside of the repo, and click the three dots to the far right and select the option to create a release.
Copy link
Contributor

Choose a reason for hiding this comment

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

Add a link directly?

@TarikGul
Copy link
Member Author

TarikGul commented May 5, 2021

@dvdplm I like the following suggestions, i think they are practical/useful. I'll put together a small issue to get a PR for these. I also like the idea of putting this all in the notion page for any future cases.

This pull request was closed.
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.

[docs]: Update the docs with more accurate release guidelines.
5 participants