9
0
mirror of https://github.com/Winds-Studio/Leaf.git synced 2025-12-19 15:09:25 +00:00
Files
Leaf/scripts/upstreamCommit.sh
Dreeam d06fb16da3 Updated Upstream (Paper/Gale/Purpur)
Upstream has released updates that appear to apply and compile correctly

Paper Changes:
PaperMC/Paper@30fdfb1a [ci/skip] Fix docs for DamageResistant (#11992)
PaperMC/Paper@6b7650d8 Only add goat horn once (#12001)
PaperMC/Paper@30046e04 Fix a rare crash with a concurrent modification of scaled health attributes (#12002)
PaperMC/Paper@88bbead1 Flush regionfiles on save configuration option
PaperMC/Paper@336ea9df Check for empty when sending equipment changes (#12008)
PaperMC/Paper@939bb782 Add RayTraceConfigurationBuilder (#11907)
PaperMC/Paper@81bb82f5 Fix wrong piston world border check (#12007)
PaperMC/Paper@ce95b5d6 Use proper default for setting null display background color (#12010)
PaperMC/Paper@2477f1f6 [ci/skip] fix and improvements for docs in ConsumeEffect component (#11998)
PaperMC/Paper@fb5b173c Add PlayerClientLoadedWorldEvent (#11940)
PaperMC/Paper@3af5e771 Add Player#give (#11995)
PaperMC/Paper@7e21cb81 fix PlayerChangedMainHandEvent javadoc (#12020)
PaperMC/Paper@5a34bf04 Correctly retrun true for empty input shapes in EntityGetter#isUnobstructed
PaperMC/Paper@a392d475 Make Watchdog thread extend TickThread

Gale Changes:
Dreeam-qwq/Gale@f9080a7e Updated Upstream (Paper)
Dreeam-qwq/Gale@ff0596c1 [ci/skip] Fix upstream commit sh on mac
Dreeam-qwq/Gale@24970274 [ci/skip] Hermanez - Wutaf
Dreeam-qwq/Gale@85eabf60 [ci/skip] cleanup
Dreeam-qwq/Gale@7d9faf00 [ci/skip] cleanup & drop xor-shift random
Dreeam-qwq/Gale@7af04981 [ci/skip] cleanup
Dreeam-qwq/Gale@4d5d39df [ci/skip] Remove useless params standardize in upstream commit generator
Dreeam-qwq/Gale@964f16ff Updated Upstream (Paper)
Dreeam-qwq/Gale@0566a223 [ci/skip] cleanup
Dreeam-qwq/Gale@5e3f6740 [ci/skip] cleanup work finished
Dreeam-qwq/Gale@98a66cfb Updated Upstream (Paper)
Dreeam-qwq/Gale@f7736578 [ci/skip] Update upstreamCommit.sh
Dreeam-qwq/Gale@1c46c816 Updated Upstream (Paper)
Dreeam-qwq/Gale@2b0a4c09 [ci/skip] Skip tests during auto update validate phase

Purpur Changes:
PurpurMC/Purpur@4a0a86b9 Updated Upstream (Paper)
PurpurMC/Purpur@7399988c Fix hover in /plugins
PurpurMC/Purpur@5e5857dc [ci/skip] modify ci skip references in paper upstream commits
PurpurMC/Purpur@5583a3f1 Updated Upstream (Paper)
2025-01-27 20:08:18 -05:00

113 lines
3.0 KiB
Bash
Executable File

#!/usr/bin/env bash
# requires curl & jq
# Credit: https://github.com/PurpurMC/Purpur
# Usage:
# upstreamCommit --paper HASH --gale HASH --purpur HASH --leaves HASH
# flag: --paper HASH - (Optional) the commit hash to use for comparing commits between paper (PaperMC/Paper/compare/HASH...HEAD)
# flag: --gale HASH - the commit hash to use for comparing commits between gale (Dreeam-qwq/Gale/compare/HASH...HEAD)
# flag: --purpur HASH - the commit hash to use for comparing commits between purpur (PurpurMC/Purpur/compare/HASH...HEAD)
# flag: --leaves HASH - the commit hash to use for comparing commits between leaves (LeavesMC/Leaves/compare/HASH...HEAD)
function getCommits() {
curl -H "Accept: application/vnd.github.v3+json" https://api.github.com/repos/"$1"/compare/"$2"..."$3" | jq -r '.commits[] | "'"$1"'@\(.sha[:8]) \(.commit.message | split("\r\n")[0] | split("\n")[0])" | sub("\\[ci( |-)skip]"; "[ci/skip]")'
}
(
set -e
PS1="$"
galeHash=$(git diff gradle.properties | awk '/^-galeCommit =/{print $NF}')
paperHash=""
purpurHash=""
leavesHash=""
# Useless params standardize
# TEMP=$(getopt --long paper:,gale:,purpur:,leaves: -o "" -- "$@")
# eval set -- "$TEMP"
while true; do
case "$1" in
--paper)
paperHash="$2"
shift 2
;;
--gale)
galeHash="$2"
shift 2
;;
--purpur)
purpurHash="$2"
shift 2
;;
--leaves)
leavesHash="$2"
shift 2
;;
*)
break
;;
esac
done
paper=""
gale=""
purpur=""
leaves=""
updated=""
logsuffix=""
# Paper updates
if [ -n "$paperHash" ]; then
paper=$(getCommits "PaperMC/Paper" "$paperHash" "HEAD")
# Updates found
if [ -n "$paper" ]; then
updated="Paper"
logsuffix="$logsuffix\n\nPaper Changes:\n$paper"
fi
fi
# Gale updates
if [ -n "$galeHash" ]; then
newHash=$(git diff gradle.properties | awk '/^+galeCommit =/{print $NF}')
gale=$(getCommits "Dreeam-qwq/Gale" "$galeHash" $(echo $newHash | grep . -q && echo $newHash || echo "HEAD"))
# Updates found
if [ -n "$gale" ]; then
updated="${updated:+$updated/}Gale"
logsuffix="$logsuffix\n\nGale Changes:\n$gale"
fi
fi
# Purpur updates
if [ -n "$purpurHash" ]; then
purpur=$(getCommits "PurpurMC/Purpur" "$purpurHash" "HEAD")
# Updates found
if [ -n "$purpur" ]; then
updated="${updated:+$updated/}Purpur"
logsuffix="$logsuffix\n\nPurpur Changes:\n$purpur"
fi
fi
# Leaves updates
if [ -n "$leavesHash" ]; then
leaves=$(getCommits "LeavesMC/Leaves" "$leavesHash" "HEAD")
# Updates found
if [ -n "$leaves" ]; then
updated="${updated:+$updated/}Leaves"
logsuffix="$logsuffix\n\nLeaves Changes:\n$leaves"
fi
fi
disclaimer="Upstream has released updates that appear to apply and compile correctly"
log="Updated Upstream ($updated)\n\n${disclaimer}${logsuffix}"
git add gradle.properties
echo -e "$log" | git commit -F -
) || exit 1