Jeff Verkoeyen f2da09a5fb Add releasing tooling and guide.
Summary:
Includes the following tools:

- api_diff: Writes a CHANGELOG.md-ready API diff for the latest release to stdout.
- changed_files: Writes a list of modified component sources for the latest release to stdout.
- changed_public_headers: Writes a list of modified component public headers for the latest release to stdout.
- changes: Writes a CHANGELOG.md-ready list of changes in this release, organized by component, to stdout.
- cut: Creates a release-candidate branch, creates a release section in CHANGELOG.md, and outputs an email to be sent to the community to stdout.
- diff: Generates a diff from the last release to the current one.
- merge: Performs the final merge operations into master and develop for the current release.
- next: Returns a version number bumped from the latest release on origin/master.

These tools are all discussed in the new Releasing contributor guide also included in this diff.

Reviewers: randallli, iangordon, #mdc_ios_owners, ajsecord

Reviewed By: #mdc_ios_owners, ajsecord

Subscribers: ajsecord

Projects: #material_components_ios

Differential Revision: http://codereview.cc/D509
2016-04-07 11:36:56 -04:00

25 lines
897 B
Bash
Executable File

#!/bin/bash
#
# Copyright 2016-present Google Inc. All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# Writes a CHANGELOG.md-ready API diff for the latest release to stdout.
if [ ! $(git rev-parse --verify release-candidate 2> /dev/null) ]; then
echo "Please cut a release first by running scripts/release/cut."
exit 1
fi
scripts/api_diff -o origin/master -n release-candidate