Skip to content

Fix release instructions #158

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

Merged
merged 4 commits into from
Jul 26, 2017
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
31 changes: 24 additions & 7 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,14 @@ Example: `http://localhost:9876/base/test/web-platform-tests/web-animations/anim

## Publishing a release

1. Clone a fresh copy of [web-animations-js](https://github.com/web-animations/web-animations-js).

1. Make sure you are on the `dev` branch.

```sh
git checkout dev
```

1. Determine the version number for the release

* Increment the first number and reset others to 0 when there are large breaking changes
Expand All @@ -70,8 +78,14 @@ Example: `http://localhost:9876/base/test/web-platform-tests/web-animations/anim

1. Build the polyfill with `npm install && grunt` then update `docs/experimental.md`'s Build Target Comparison with the current gzipped sizes.

1. Commit the above changes to web-animations-js/dev and merge to
web-animations-js/master.
1. Commit and push the above changes to web-animations-js/dev.

```sh
# Create a commit with above changes
git push origin dev
```

1. Merge to local master branch:

```sh
git checkout master
Expand All @@ -85,14 +99,17 @@ Example: `http://localhost:9876/base/test/web-platform-tests/web-animations/anim
grunt
# Optional "grunt test" to make sure everything still passes.
git add -f *.min.js{,.map}
git rm .gitignore
git rm --ignore-unmatch .gitignore
git commit -m 'Add build artifacts from '`cat .git/refs/heads/dev`
git push HEAD:refs/heads/master
git push origin master
Copy link
Contributor

Choose a reason for hiding this comment

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

Let's add a step to verify that git remote -v shows that origin points to github.com/web-animations/web-animations-js.

Copy link
Contributor

Choose a reason for hiding this comment

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

Steps "Add versioned release notes to History.md" and "Commit the above changes" should probably also be using origin.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Hmm what happens if their git remote -v doesn't show the right value? If it's a fork, I'm guessing it'll point to their own forked repo?

Copy link
Contributor

Choose a reason for hiding this comment

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

In that case the least invasive way to resolve it is to make a new clone of the central repo and work in that.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Cool, so maybe for releases, we use a clone, but for code changes, use fork? I'll add a step in the beginning for cloning the repo.

Copy link
Contributor

Choose a reason for hiding this comment

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

Sure that works. If the release process doesn't assume the existence of a repository that gives it more guarantees on the repo's state.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Cool, uploaded new commits, PTAL

```

1. Draft a [new release](https://github.com/web-animations/web-animations-js/releases) at the
commit pushed to web-animations-js in step #4. Copy the release notes from `History.md`
added in step #2.
1. Draft a [new release](https://github.com/web-animations/web-animations-js/releases).

* For the **tag version**, put the new version number of this release.
* For the **target**, select "master".
* For the **title**, look at previous releases for examples.
* For the **description**, copy the release notes from `History.md` added in step #2.

1. Once you've pushed to web-animations-js, run `npm publish` from that checked-out folder

Expand Down