1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-11-28 16:20:57 -05:00

chore: update cut_a_release.md (#13352)

This commit is contained in:
Bartek Iwańczuk 2022-01-13 16:43:35 +01:00 committed by GitHub
parent 282c235ba1
commit 5e2d7737f5
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -11,6 +11,7 @@
[`denoland/dotland`](https://github.com/denoland/dotland/), [`denoland/dotland`](https://github.com/denoland/dotland/),
[`denoland/docland`](https://github.com/denoland/docland/), [`denoland/docland`](https://github.com/denoland/docland/),
[`denoland/deno_docker`](https://github.com/denoland/deno_docker/) [`denoland/deno_docker`](https://github.com/denoland/deno_docker/)
[`denoland/manual`](https://github.com/denoland/manual/)
- [ ] Ensure that external dependencies are up-to date in `denoland/deno` (e.g. - [ ] Ensure that external dependencies are up-to date in `denoland/deno` (e.g.
`rusty_v8`, `serde_v8`, `deno_doc`, `deno_lint`). `rusty_v8`, `serde_v8`, `deno_doc`, `deno_lint`).
- [ ] Ownership access on crates.io for the 19 (🙀) crates that you will be - [ ] Ownership access on crates.io for the 19 (🙀) crates that you will be
@ -22,20 +23,44 @@
release from) should be frozen and no commits should land until the release is release from) should be frozen and no commits should land until the release is
cut.** cut.**
Before starting the process write a message in company's #general channel:
`:lock: deno and deno_std are now locked`
## Updating `deno_std` ## Updating `deno_std`
1. Checkout a branch for releasing `std` (e.g. `release_#.#.#`). 1. Checkout a branch for releasing `std` (e.g. `release_#.#.#`).
2. Open a PR on the `deno_std` repo that bumps the version in `version.ts` and 2. Open a PR on the `deno_std` repo that bumps the version in `version.ts` and
updates `Releases.md` updates `Releases.md`. You can use following command to generate a short list
that needs to be updated: `git log --oneline <previous_tag>..` (replace
`<previous_tag>` with actual latest tag). Remove all commits that are not
`feat` or `fix`.
3. Before merging the PR, make sure that all tests pass when run using binary 3. Before merging the PR, make sure that all tests pass when run using binary
produced from bumping crates (point 3. from below). produced from bumping crates (point 3. from below).
4. Create a tag with the version number (_without_ `v` prefix). 4. When merging the PR, ensure that the commit name is exactly the version name.
Eg. `0.121.0`, not `0.121.0 (#1810)`.
5. Create a tag with the version number (_without_ `v` prefix).
6. Once CI passes, copy contents of `Releases.md` you added, and create a new
release on GitHub (https://github.com/denoland/deno_std/releases).
## Updating the main repo ## Updating the main repo
**If you are cutting a patch release**: First you need to sync commit to the
relevant minor branch, so if you are cutting a `v1.17.3` release you need to
sync `v1.17` branch.
To do that, you need to cherry-pick commits from the main branch to the `v1.17`
branch. For patch releases we want to cherry-pick all commits that are not
`feat` commits. Check what was the last commit on `v1.17` branch before the
previous release and start cherry-picking newer commits from the `main`.
Once all relevant commits are cherry-picked, push the branch to the upstream and
verify on GitHub that everything looks correct.
1. Checkout a branch for releasing crate dependencies (e.g. `deps_#.#.#`). 1. Checkout a branch for releasing crate dependencies (e.g. `deps_#.#.#`).
2. Run `./tools/release/01_bump_dependency_crate_versions.ts` to increase the 2. Run `./tools/release/01_bump_dependency_crate_versions.ts` to increase the
@ -43,7 +68,9 @@ cut.**
`runtime` directories. `runtime` directories.
3. Commit these changes with a commit message like 3. Commit these changes with a commit message like
`chore: bump crate version for #.#.#` and create a PR for this change. `chore: bump crate version for #.#.#` and create a PR for this change. **If
you are cutting a patch release**: make sure to target `v1.XX` branch instead
of `main` in your PR.
4. Make sure CI pipeline passes (DO NOT merge yet). 4. Make sure CI pipeline passes (DO NOT merge yet).
@ -71,7 +98,8 @@ cut.**
11. Update link in `cli/compat/mod.rs` with the released version of `deno_std` 11. Update link in `cli/compat/mod.rs` with the released version of `deno_std`
and do a search through the tests to find std urls that need to be updated. and do a search through the tests to find std urls that need to be updated.
12. Create a PR for these changes. 12. Create a PR for these changes. **If you are cutting a patch release**: make
sure to target `v1.XX` branch instead of `main` in your PR.
13. Make sure CI pipeline passes. 13. Make sure CI pipeline passes.
@ -108,6 +136,9 @@ cut.**
been updated to reflect Web API changes in this release. Usually done ahead been updated to reflect Web API changes in this release. Usually done ahead
of time by @lucacasonato. of time by @lucacasonato.
23. **If you are cutting a patch release**: open a PR that forwards all commits
created in the release process to the `main` branch.
## Updating `doc.deno.land` ## Updating `doc.deno.land`
This should occur after the Deno CLI is fully published, as the build script This should occur after the Deno CLI is fully published, as the build script
@ -129,3 +160,6 @@ queries the GitHub API to determine what it needs to change and update.
1. Open a PR on the `deno_docker` repo that bumps the Deno version in all 1. Open a PR on the `deno_docker` repo that bumps the Deno version in all
Dockerfiles, the README and the example Dockerfile Dockerfiles, the README and the example Dockerfile
2. Create a tag with the version number (_without_ `v` prefix). 2. Create a tag with the version number (_without_ `v` prefix).
Write a message in company's #general channel:
`:unlock: deno and deno_std are now unlocked`.