#!/bin/bash set -e mydir="$(dirname "$(realpath "$0")")" pushd "$mydir" > /dev/null source ./merge_helpers.sh # Check branch check_branch $branch forall_repos check_branch $branch # Ensure clean git state forall_repos check_clean_git # Fetch upstream forall_repos git fetch origin > /dev/null 2>/dev/null forall_repos git fetch upstream > /dev/null 2>/dev/null ( # Add new line below git log: https://unix.stackexchange.com/a/345558 get_latest_upstream_tag forelement_repos git log --pretty=format:"- %s" "sc" "^$latest_upstream_tag" "^master" \ | printf '%s\n' "$(cat)" \ | sed "s|Merge tag '\\(.*\\)' into sc.*|Update codebase to Element \1|" \ | sed "s|Merge tag '\\(.*\\)' into merge.*|Update codebase to Element \1|" get_current_mxsdk_tags pushd "matrix-js-sdk" > /dev/null git log --pretty=format:"- %s" "sc" "^$current_mxjssdk_tag" "^master" \ | printf '%s\n' "$(cat)" \ | grep -v "Merge .*tag" popd > /dev/null pushd "matrix-react-sdk" > /dev/null git log --pretty=format:"- %s" "sc" "^$current_mxreactsdk_tag" "^master" \ | printf '%s\n' "$(cat)" \ | grep -v "Merge .*tag" popd > /dev/null ) \ | grep -v "Automatic i18n reversion" \ | grep -v "Automatic package.json reversion" \ | grep -v "Merge .*branch" \ | grep -v "Automatic theme update" \ | grep -v "Automatic package.json adjustment" \ | grep -v "Automatic i18n adjustment" \ | grep -v "Update version to .*-sc\\..*" \ | grep -v "\\.sh" \ | grep -v "\\.md" \ | grep -v "Added translation using Weblate" \ | grep -v "Translated using Weblate" \ | grep -v "weblate/sc" \ | grep -v "\\[.*merge.*\\]" \ | awk '!seen[$0]++' `# https://stackoverflow.com/a/1444448` \ || echo "No significant changes since the last stable release" popd > /dev/null