From 74a77343983ab5252a96af4f3aa5cf75d64d8b77 Mon Sep 17 00:00:00 2001 From: SamB440 Date: Thu, 3 Mar 2022 20:46:35 +0000 Subject: [PATCH] Update gradle wrapper --- gradle/wrapper/gradle-wrapper.jar | Bin 55190 -> 59821 bytes gradle/wrapper/gradle-wrapper.properties | 2 +- gradlew | 286 ++++++++++++++--------- gradlew.bat | 43 ++-- 4 files changed, 199 insertions(+), 132 deletions(-) diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar index 87b738cbd051603d91cc39de6cb000dd98fe6b02..41d9927a4d4fb3f96a785543079b8df6723c946b 100644 GIT binary patch delta 26986 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 delta 22520 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
IA&%cW_eA0aRkj43NJ!y{{iGp}3 zYgv8~@%tF0so9}97;ic=h}M@K(eDUHTI%8!2J!q|GQt)%eAdnEi_GSBEIGWJXMYsU3)--|dW z$Jm+o-3iV)RM$M$^sB^oiZv+)(|VIWP%YOY5IAm}HC5Z(9OFTDhEIYBto2l1fh!Dj z4GL4TE9;CD>YofWSSyoP*#?AmJ4_tXeaW)nDAvU<|5E;NGhM`o;RiSpQ!B?rJNcz) z?NN~>V;0@BXI!IUE!9NQ<=@Z54jP~tl*#<+t$>m%JD-;IrE=^0kiB26Hk*r&jSoRt zhy>AC@~e(*<9+QH2Tvzc?0Sg_-)IX{NTX^x^+hzO2iMQKAG2B2ys&Hk zR5&o5Yn)9IdFN(dZ*Df};=E$C7ryx1vX8yg%B9&G&sC&J={0{5^7526IrQQ$NG930 z6Hl>=5AjO-ektkDxkA?rj$DTKFU&#_Os)jIrZzoW)+L|5R+GPL=)}yMsLtlT%7Du; z#R&z%y@py|K-~^fEwe9*h3^Hl-Q(DaH06xHC!P8e}>W;i1J9 zTd0@y;k|48Ahw!dl8~%En|LqP_(t3{2*L6$Kh=I--3d+3Zib-!F5xoLFPQkG@_}C$>l3xS zP=WD0ePfUcr|A@J+wV|U*BITQSOOZtDPfj1vuCy6u#ZV!df0?WD|&xCLyGJU%SyeN zpHsD0rqGD23k>X_?Hb37dr`V!aC$*{x{nUEO#doe$6U=Y?1{M3m@_>^7>C%G_cl~p zWhS2`7s__;%5c-1-ohWkHH7$a@HMATJtcIC`tYV%0J$I%(#p4dIYa#Tkxatir^WaZ zyYM$Mmf&|odgUDf(7+}}%n^5h1Kxi?ja`8q^pZTU>v zHv|#MR@K?P0W`6KJ+!i-oDmUX9-X;wpZU_buj*VvuKdX=N=8~EsfgTP$fXBkUB@BI z;|*6zaG00Y!-flL6k+jBt}1qFc_rr1wafPS_nR3tqlLqa+0nV0zj4T+Ct$_?pbkCW z({l{Qb-Je45N}9a^X7GFxd{#Od1{h&LQEkk-Gcn`{M}2eAt8TR5~8~mrS#!C4G7RB z&8UzOIJg6&J|Q=a4BcEm^GiL)J2E2DthU)-o^HqPYrJD|RtVt>wpm2bUcK(eUwF*_ z+gA+#rso+d`xuP~b<&_tD;E=UdkYRTdmEs|lN!7UhmW!ij;J+apaDFyuzH&riaYoJ z+wv0)jRT0A6#^LNxIuQ9fHONO5XX2AaGis|{%CoJBL2^(C_o+SU!WKs1)z!~fc>|- z85$bhe~_r(qJTE+f5BWtn1Im&0Z@*Ff?6T}n5lttBpg&majPPjXaR$HIH;BurE&q! z771Ygts+N5ga5(&iU9?p1T?t_0lWn`=!E^2LSumj_TTy_RQ35EK1&?8pj;H_N$LOO zZT|rZ5cmg#1!ygDgT5)=jZwK_p_RAlBX{xutzjtFG0L~Ht?2onlKfp!m|A2`B zqa`@#TIcV3E-8TU3~t4%C0P)*(LW*<@M4)7_V3yTiizP5HghW=eOU_7^g_q|+fIPC zFV$lONUey1j;(+IFFs&ml>q2kfr9*OQ7Q#+x}px^dmuGD<>;!hbOWGpH+$sX$k$2*9xg2ic|H zf&#Y$K~`C};`){(=xOdP+ei%|iktwj*@lA3@^4MF_0)fvV1LCe87c{xJ!e{{!pa B4=Mlv diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 2e6e589..41dfb87 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.3-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-7.4-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/gradlew b/gradlew index af6708f..1b6c787 100644 --- a/gradlew +++ b/gradlew @@ -1,78 +1,129 @@ -#!/usr/bin/env sh +#!/bin/sh + +# +# Copyright © 2015-2021 the original authors. +# +# 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 +# +# https://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. +# ############################################################################## -## -## Gradle start up script for UN*X -## +# +# Gradle start up script for POSIX generated by Gradle. +# +# Important for running: +# +# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is +# noncompliant, but you have some other compliant shell such as ksh or +# bash, then to run this script, type that shell name before the whole +# command line, like: +# +# ksh Gradle +# +# Busybox and similar reduced shells will NOT work, because this script +# requires all of these POSIX shell features: +# * functions; +# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», +# «${var#prefix}», «${var%suffix}», and «$( cmd )»; +# * compound commands having a testable exit status, especially «case»; +# * various built-in commands including «command», «set», and «ulimit». +# +# Important for patching: +# +# (2) This script targets any POSIX shell, so it avoids extensions provided +# by Bash, Ksh, etc; in particular arrays are avoided. +# +# The "traditional" practice of packing multiple parameters into a +# space-separated string is a well documented source of bugs and security +# problems, so this is (mostly) avoided, by progressively accumulating +# options in "$@", and eventually passing that to Java. +# +# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, +# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; +# see the in-line comments for details. +# +# There are tweaks for specific operating systems such as AIX, CygWin, +# Darwin, MinGW, and NonStop. +# +# (3) This script is generated from the Groovy template +# https://github.com/gradle/gradle/blob/master/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# within the Gradle project. +# +# You can find Gradle at https://github.com/gradle/gradle/. +# ############################################################################## # Attempt to set APP_HOME + # Resolve links: $0 may be a link -PRG="$0" -# Need this for relative symlinks. -while [ -h "$PRG" ] ; do - ls=`ls -ld "$PRG"` - link=`expr "$ls" : '.*-> \(.*\)$'` - if expr "$link" : '/.*' > /dev/null; then - PRG="$link" - else - PRG=`dirname "$PRG"`"/$link" - fi +app_path=$0 + +# Need this for daisy-chained symlinks. +while + APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path + [ -h "$app_path" ] +do + ls=$( ls -ld "$app_path" ) + link=${ls#*' -> '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac done -SAVED="`pwd`" -cd "`dirname \"$PRG\"`/" >/dev/null -APP_HOME="`pwd -P`" -cd "$SAVED" >/dev/null + +APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit APP_NAME="Gradle" -APP_BASE_NAME=`basename "$0"` +APP_BASE_NAME=${0##*/} # Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -DEFAULT_JVM_OPTS='"-Xmx64m"' +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' # Use the maximum available, or set MAX_FD != -1 to use that value. -MAX_FD="maximum" +MAX_FD=maximum warn () { echo "$*" -} +} >&2 die () { echo echo "$*" echo exit 1 -} +} >&2 # OS specific support (must be 'true' or 'false'). cygwin=false msys=false darwin=false nonstop=false -case "`uname`" in - CYGWIN* ) - cygwin=true - ;; - Darwin* ) - darwin=true - ;; - MINGW* ) - msys=true - ;; - NONSTOP* ) - nonstop=true - ;; +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; esac CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + # Determine the Java command to use to start the JVM. if [ -n "$JAVA_HOME" ] ; then if [ -x "$JAVA_HOME/jre/sh/java" ] ; then # IBM's JDK on AIX uses strange locations for the executables - JAVACMD="$JAVA_HOME/jre/sh/java" + JAVACMD=$JAVA_HOME/jre/sh/java else - JAVACMD="$JAVA_HOME/bin/java" + JAVACMD=$JAVA_HOME/bin/java fi if [ ! -x "$JAVACMD" ] ; then die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME @@ -81,7 +132,7 @@ Please set the JAVA_HOME variable in your environment to match the location of your Java installation." fi else - JAVACMD="java" + JAVACMD=java which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. Please set the JAVA_HOME variable in your environment to match the @@ -89,84 +140,95 @@ location of your Java installation." fi # Increase the maximum file descriptors if we can. -if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then - MAX_FD_LIMIT=`ulimit -H -n` - if [ $? -eq 0 ] ; then - if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then - MAX_FD="$MAX_FD_LIMIT" - fi - ulimit -n $MAX_FD - if [ $? -ne 0 ] ; then - warn "Could not set maximum file descriptor limit: $MAX_FD" - fi - else - warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" - fi -fi - -# For Darwin, add options to specify how the application appears in the dock -if $darwin; then - GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" -fi - -# For Cygwin, switch paths to Windows format before running java -if $cygwin ; then - APP_HOME=`cygpath --path --mixed "$APP_HOME"` - CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` - JAVACMD=`cygpath --unix "$JAVACMD"` - - # We build the pattern for arguments to be converted via cygpath - ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` - SEP="" - for dir in $ROOTDIRSRAW ; do - ROOTDIRS="$ROOTDIRS$SEP$dir" - SEP="|" - done - OURCYGPATTERN="(^($ROOTDIRS))" - # Add a user-defined pattern to the cygpath arguments - if [ "$GRADLE_CYGPATTERN" != "" ] ; then - OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" - fi - # Now convert the arguments - kludge to limit ourselves to /bin/sh - i=0 - for arg in "$@" ; do - CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` - CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option - - if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition - eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` - else - eval `echo args$i`="\"$arg\"" - fi - i=$((i+1)) - done - case $i in - (0) set -- ;; - (1) set -- "$args0" ;; - (2) set -- "$args0" "$args1" ;; - (3) set -- "$args0" "$args1" "$args2" ;; - (4) set -- "$args0" "$args1" "$args2" "$args3" ;; - (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; - (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; - (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; - (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; - (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" esac fi -# Escape application args -save () { - for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done - echo " " -} -APP_ARGS=$(save "$@") +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. -# Collect all arguments for the java command, following the shell quoting and substitution rules -eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS" +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" ) -# by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong -if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then - cd "$(dirname "$0")" + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done fi +# Collect all arguments for the java command; +# * $DEFAULT_JVM_OPTS, $JAVA_OPTS, and $GRADLE_OPTS can contain fragments of +# shell script including quotes and variable substitutions, so put them in +# double quotes to make sure that they get re-expanded; and +# * put everything else in single quotes, so that it's not re-expanded. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -classpath "$CLASSPATH" \ + org.gradle.wrapper.GradleWrapperMain \ + "$@" + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + exec "$JAVACMD" "$@" diff --git a/gradlew.bat b/gradlew.bat index 6d57edc..107acd3 100644 --- a/gradlew.bat +++ b/gradlew.bat @@ -1,3 +1,19 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem + @if "%DEBUG%" == "" @echo off @rem ########################################################################## @rem @@ -13,15 +29,18 @@ if "%DIRNAME%" == "" set DIRNAME=. set APP_BASE_NAME=%~n0 set APP_HOME=%DIRNAME% +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + @rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -set DEFAULT_JVM_OPTS="-Xmx64m" +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" @rem Find java.exe if defined JAVA_HOME goto findJavaFromJavaHome set JAVA_EXE=java.exe %JAVA_EXE% -version >NUL 2>&1 -if "%ERRORLEVEL%" == "0" goto init +if "%ERRORLEVEL%" == "0" goto execute echo. echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. @@ -35,7 +54,7 @@ goto fail set JAVA_HOME=%JAVA_HOME:"=% set JAVA_EXE=%JAVA_HOME%/bin/java.exe -if exist "%JAVA_EXE%" goto init +if exist "%JAVA_EXE%" goto execute echo. echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% @@ -45,28 +64,14 @@ echo location of your Java installation. goto fail -:init -@rem Get command-line arguments, handling Windows variants - -if not "%OS%" == "Windows_NT" goto win9xME_args - -:win9xME_args -@rem Slurp the command line arguments. -set CMD_LINE_ARGS= -set _SKIP=2 - -:win9xME_args_slurp -if "x%~1" == "x" goto execute - -set CMD_LINE_ARGS=%* - :execute @rem Setup the command line set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + @rem Execute Gradle -"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %* :end @rem End local scope for the variables with windows NT shell