Permalink
Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.
Sign up
Fetching contributors…
Cannot retrieve contributors at this time
#!/bin/bash | |
# | |
# taken from: https://github.com/poldracklab/fmriprep/blob/master/update_changes.sh | |
# Collects the pull-requests since the latest release and | |
# aranges them in the CHANGES.rst.txt file. | |
# | |
# This is a script to be run before releasing a new version. | |
# | |
# Usage /bin/bash update_changes.sh 1.0.1 | |
# | |
# Setting # $ help set | |
set -u # Treat unset variables as an error when substituting. | |
set -x # Print command traces before executing command. | |
# Check whether the Upcoming release header is present | |
head -1 CHANGELOG.rst | grep -q Upcoming | |
UPCOMING=$? | |
if [[ "$UPCOMING" == "0" ]]; then | |
head -n3 CHANGELOG.rst >> newchanges | |
fi | |
# Elaborate today's release header | |
HEADER="$1 ($(date '+%B %d, %Y'))" | |
echo $HEADER >> newchanges | |
echo $( printf "%${#HEADER}s" | tr " " "=" ) >> newchanges | |
echo "" >> newchanges | |
# Search for PRs since previous release | |
git log --grep="Merge pull request" `git describe --tags --abbrev=0`..HEAD --pretty='format: * %b %s' | sed 's/Merge pull request \#\([^\d]*\)\ from\ .*/(\#\1)/' >> newchanges | |
echo "" >> newchanges | |
echo "" >> newchanges | |
# Add back the Upcoming header if it was present | |
if [[ "$UPCOMING" == "0" ]]; then | |
tail -n+4 CHANGELOG.rst >> newchanges | |
else | |
cat CHANGELOG.rst >> newchanges | |
fi | |
# Replace old CHANGES.rst with new file | |
mv newchanges CHANGELOG.rst |