@@ -532,6 +532,10 @@ sortModulesToInstall() {
532
532
if test $PHP_MAJMIN_VERSION -le 506; then
533
533
checkRequiredModule event sockets
534
534
fi
535
+ # relay requires msgpack
536
+ checkRequiredModule relay msgpack
537
+ # relay requires igbinary
538
+ checkRequiredModule relay igbinary
535
539
# Some module installation may use sockets if available: move it before other modules
536
540
if stringInList ' sockets' " $PHP_MODULES_TO_INSTALL " ; then
537
541
PHP_MODULES_TO_INSTALL=" $( removeStringFromList ' sockets' " $PHP_MODULES_TO_INSTALL " ) "
@@ -744,7 +748,10 @@ buildRequiredPackageLists() {
744
748
buildRequiredPackageLists_persistent=" $buildRequiredPackageLists_persistent libwebp"
745
749
buildRequiredPackageLists_volatile=" $buildRequiredPackageLists_volatile libwebp-dev"
746
750
if test $PHP_MAJMIN_VERSION -ge 801; then
747
- if isLibaomInstalled && isLibdav1dInstalled && isLibyuvInstalled && isLibavifInstalled; then
751
+ if test $DISTRO_MAJMIN_VERSION -ge 315; then
752
+ buildRequiredPackageLists_persistent=" $buildRequiredPackageLists_persistent libavif aom-libs libdav1d"
753
+ buildRequiredPackageLists_volatile=" $buildRequiredPackageLists_volatile libavif-dev aom-dev dav1d-dev"
754
+ elif isLibaomInstalled && isLibdav1dInstalled && isLibyuvInstalled && isLibavifInstalled; then
748
755
buildRequiredPackageLists_persistent=" $buildRequiredPackageLists_persistent libstdc++"
749
756
else
750
757
case " ${IPE_GD_WITHOUTAVIF:- } " in
@@ -1117,6 +1124,9 @@ buildRequiredPackageLists() {
1117
1124
esac
1118
1125
fi
1119
1126
;;
1127
+ relay@alpine)
1128
+ buildRequiredPackageLists_persistent=" $buildRequiredPackageLists_persistent lz4-libs zstd-libs"
1129
+ ;;
1120
1130
simdjson@alpine)
1121
1131
buildRequiredPackageLists_persistent=" $buildRequiredPackageLists_persistent libstdc++"
1122
1132
;;
@@ -1615,7 +1625,7 @@ getModuleIniEntryType() {
1615
1625
#
1616
1626
# Arguments:
1617
1627
# $1: the name of the PHP extension
1618
- # $3 : additional php.ini configuration (optional)
1628
+ # $2 : additional php.ini configuration (optional)
1619
1629
#
1620
1630
# Output:
1621
1631
# The contents of the ini file
@@ -2217,24 +2227,37 @@ EOF
2217
2227
elif test $PHP_MAJMIN_VERSION -le 800; then
2218
2228
docker-php-ext-configure gd --enable-gd --with-webp --with-jpeg --with-xpm --with-freetype
2219
2229
else
2220
- case " ${IPE_GD_WITHOUTAVIF:- } " in
2221
- 1 | y* | Y* ) ;;
2222
- * )
2223
- if ! isLibaomInstalled; then
2224
- installLibaom
2225
- fi
2226
- if ! isLibdav1dInstalled; then
2227
- installLibdav1d
2228
- fi
2229
- if ! isLibyuvInstalled; then
2230
- installLibyuv
2231
- fi
2232
- if ! isLibavifInstalled; then
2233
- installLibavif
2230
+ installBundledModule_tmp=0
2231
+ case " $DISTRO " in
2232
+ alpine)
2233
+ if test $DISTRO_MAJMIN_VERSION -ge 315; then
2234
+ installBundledModule_tmp=1
2234
2235
fi
2235
2236
;;
2236
2237
esac
2237
- if isLibaomInstalled && isLibdav1dInstalled && isLibyuvInstalled && isLibavifInstalled; then
2238
+ if test $installBundledModule_tmp -eq 0; then
2239
+ case " ${IPE_GD_WITHOUTAVIF:- } " in
2240
+ 1 | y* | Y* ) ;;
2241
+ * )
2242
+ if ! isLibaomInstalled; then
2243
+ installLibaom
2244
+ fi
2245
+ if ! isLibdav1dInstalled; then
2246
+ installLibdav1d
2247
+ fi
2248
+ if ! isLibyuvInstalled; then
2249
+ installLibyuv
2250
+ fi
2251
+ if ! isLibavifInstalled; then
2252
+ installLibavif
2253
+ fi
2254
+ ;;
2255
+ esac
2256
+ if isLibaomInstalled && isLibdav1dInstalled && isLibyuvInstalled && isLibavifInstalled; then
2257
+ installBundledModule_tmp=1
2258
+ fi
2259
+ fi
2260
+ if test $installBundledModule_tmp -eq 1; then
2238
2261
docker-php-ext-configure gd --enable-gd --with-webp --with-jpeg --with-xpm --with-freetype --with-avif
2239
2262
else
2240
2263
docker-php-ext-configure gd --enable-gd --with-webp --with-jpeg --with-xpm --with-freetype
@@ -2615,7 +2638,7 @@ installRemoteModule() {
2615
2638
case " $DISTRO " in
2616
2639
alpine)
2617
2640
if ! test -e /usr/local/include/libgearman/gearman.h || ! test -e /usr/local/lib/libgearman.so; then
2618
- installRemoteModule_src=" $( getPackageSource https://github.com/gearman/gearmand/releases/download/1.1.19.1 /gearmand-1.1.19.1 .tar.gz) "
2641
+ installRemoteModule_src=" $( getPackageSource https://github.com/gearman/gearmand/releases/download/1.1.20 /gearmand-1.1.20 .tar.gz) "
2619
2642
cd -- " $installRemoteModule_src "
2620
2643
./configure
2621
2644
make -j$( getProcessorCount) install-binPROGRAMS
@@ -2721,7 +2744,7 @@ installRemoteModule() {
2721
2744
if ! test -f /usr/local/lib/libionc.so || ! test -f /usr/local/include/ionc/ion.h; then
2722
2745
echo ' Installing ion-c... '
2723
2746
installRemoteModule_src=" $( mktemp -p /tmp/src -d) "
2724
- git clone -q -c advice.detachedHead=false --depth 1 --branch v1.0.6 https://github.com/amzn/ion-c.git " $installRemoteModule_src /ion"
2747
+ git clone -q -c advice.detachedHead=false --depth 1 --branch v1.1.0 https://github.com/amzn/ion-c.git " $installRemoteModule_src /ion"
2725
2748
(
2726
2749
cd " $installRemoteModule_src /ion"
2727
2750
git submodule init -q
@@ -3050,6 +3073,28 @@ installRemoteModule() {
3050
3073
addConfigureOption ' enable-redis-zstd' ' yes'
3051
3074
fi
3052
3075
;;
3076
+ relay)
3077
+ if test -z " $installRemoteModule_version " ; then
3078
+ installRemoteModule_version=" $( curl -sSLf https://cachewerk.s3.amazonaws.com/relay/LATEST) "
3079
+ installRemoteModule_version=" ${installRemoteModule_version# v} "
3080
+ fi
3081
+ case $( uname -m) in
3082
+ aarch64 | arm64 | armv8)
3083
+ installRemoteModule_hardware=aarch64
3084
+ ;;
3085
+ * )
3086
+ installRemoteModule_hardware=x86-64
3087
+ ;;
3088
+ esac
3089
+ printf ' Downloading relay v%s (%s)... ' " $installRemoteModule_version " " $installRemoteModule_hardware "
3090
+ installRemoteModule_url=" https://cachewerk.s3.amazonaws.com/relay/v${installRemoteModule_version} /relay-v${installRemoteModule_version} -php${PHP_MAJDOTMIN_VERSION} -${DISTRO} -${installRemoteModule_hardware} .tar.gz"
3091
+ installRemoteModule_src=" $( getPackageSource $installRemoteModule_url ) "
3092
+ echo ' done.'
3093
+ cp -- " $installRemoteModule_src /relay-pkg.so" " $PHP_EXTDIR /relay.so"
3094
+ sed -i " s/00000000-0000-0000-0000-000000000000/$( cat /proc/sys/kernel/random/uuid) /" " $PHP_EXTDIR /relay.so"
3095
+ installRemoteModule_ini_extra=" $( grep -vE ' ^[ \t]*extension[ \t]*=' $installRemoteModule_src /relay.ini) "
3096
+ installRemoteModule_manuallyInstalled=1
3097
+ ;;
3053
3098
snappy)
3054
3099
if test -z " $installRemoteModule_path " ; then
3055
3100
if test -z " $installRemoteModule_version " ; then
@@ -3388,6 +3433,8 @@ installRemoteModule() {
3388
3433
installRemoteModule_version=2.6.1
3389
3434
elif test $PHP_MAJMIN_VERSION -le 701; then
3390
3435
installRemoteModule_version=2.9.8
3436
+ elif test $PHP_MAJMIN_VERSION -le 704; then
3437
+ installRemoteModule_version=3.1.6
3391
3438
fi
3392
3439
fi
3393
3440
;;
@@ -3512,6 +3559,13 @@ installRemoteModule() {
3512
3559
;;
3513
3560
esac
3514
3561
;;
3562
+ zstd)
3563
+ if test -z " $installRemoteModule_version " ; then
3564
+ if test $PHP_MAJMIN_VERSION -le 506; then
3565
+ installRemoteModule_version=0.11.0
3566
+ fi
3567
+ fi
3568
+ ;;
3515
3569
esac
3516
3570
if test $installRemoteModule_manuallyInstalled -eq 0; then
3517
3571
if test -n " $installRemoteModule_path " ; then
0 commit comments