Skip to content

Commit

Permalink
Merge pull request #10 from mlocati/master
Browse files Browse the repository at this point in the history
Fork Sync: Update from parent repository
  • Loading branch information
vanderletenpartners authored Sep 1, 2023
2 parents ea50859 + 7618bd4 commit 2cd7673
Show file tree
Hide file tree
Showing 5 changed files with 102 additions and 9 deletions.
5 changes: 5 additions & 0 deletions MAINTAINERS.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,11 @@ The `decimal` PHP extension requires the `libmpdec` system library.
It's not available on Alpine Linux, so we install it manually.
We need to monitor new releases at https://www.bytereef.org/mpdecimal/changelog.html

### ecma_intl

The only available versions of this PHP extension are all alpha.
We should switch to the stable release once it will be available.

### gearman

The `gearman` PHP extension requires the `libgearman` system library.
Expand Down
8 changes: 6 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -209,6 +209,7 @@ install-php-extensions @fix_letsencrypt
| ddtrace[*](#special-requirements-for-ddtrace) | | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| decimal | | | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| ds | | | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| ecma_intl[*](#special-requirements-for-ecma_intl) | | | | | | | | | | ✓ |
| enchant | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| ev | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| event | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
Expand All @@ -218,7 +219,7 @@ install-php-extensions @fix_letsencrypt
| gd | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| gearman | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | | |
| geoip | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | | | |
| geos[*](#special-requirements-for-geos) | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | | | |
| geos[*](#special-requirements-for-geos) | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| geospatial | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| gettext | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| gmagick | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
Expand Down Expand Up @@ -285,6 +286,7 @@ install-php-extensions @fix_letsencrypt
| recode | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | | | | |
| redis | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| relay | | | | | | | ✓ | ✓ | ✓ | ✓ |
| seasclick | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| seaslog | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| shmop | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| simdjson[*](#special-requirements-for-simdjson) | | | | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
Expand All @@ -308,6 +310,7 @@ install-php-extensions @fix_letsencrypt
| sysvsem | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| sysvshm | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| tensor[*](#special-requirements-for-tensor) | | | | | ✓ | ✓ | ✓ | ✓ | | |
| tideways | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| tidy | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| timezonedb | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| uopz | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
Expand All @@ -332,7 +335,7 @@ install-php-extensions @fix_letsencrypt
| zookeeper | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| zstd | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
*Number of supported extensions: 138*
*Number of supported extensions: 141*
<!-- END OF EXTENSIONS TABLE -->
PS: the pre-installed PHP extensions are excluded from this list.
Expand Down Expand Up @@ -419,6 +422,7 @@ Some extensions have special requirements:
|---|---|
| <a name="special-requirements-for-cassandra"></a>cassandra | &bull; Not available in `jessie` docker images<br />&bull; Not available in `stretch` docker images<br />&bull; Not available in `buster` docker images<br />&bull; Not available in `bullseye` docker images<br />&bull; Not available in `bookworm` docker images |
| <a name="special-requirements-for-ddtrace"></a>ddtrace | Not available in `jessie` docker images |
| <a name="special-requirements-for-ecma_intl"></a>ecma_intl | &bull; Not available in `buster` docker images<br />&bull; Not available in `bullseye` docker images |
| <a name="special-requirements-for-geos"></a>geos | &bull; Not available in `alpine3.9` docker images<br />&bull; Not available in `alpine3.10` docker images |
| <a name="special-requirements-for-lz4"></a>lz4 | Not available in `jessie` docker images |
| <a name="special-requirements-for-memcached"></a>memcached | Not available in `bookworm` docker images |
Expand Down
1 change: 1 addition & 0 deletions data/special-requirements
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
cassandra !jessie !stretch !buster !bullseye !bookworm
ddtrace !jessie
ecma_intl !buster !bullseye
geos !alpine3.9 !alpine3.10
lz4 !jessie
memcached !bookworm
Expand Down
5 changes: 4 additions & 1 deletion data/supported-extensions
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ dba 5.5 5.6 7.0 7.1 7.2 7.3 7.4 8.0 8.1 8.2
ddtrace 5.6 7.0 7.1 7.2 7.3 7.4 8.0 8.1 8.2
decimal 7.0 7.1 7.2 7.3 7.4 8.0 8.1 8.2
ds 7.0 7.1 7.2 7.3 7.4 8.0 8.1 8.2
ecma_intl 8.2
enchant 5.5 5.6 7.0 7.1 7.2 7.3 7.4 8.0 8.1 8.2
ev 5.5 5.6 7.0 7.1 7.2 7.3 7.4 8.0 8.1 8.2
event 5.5 5.6 7.0 7.1 7.2 7.3 7.4 8.0 8.1 8.2
Expand All @@ -23,7 +24,7 @@ ffi 7.4 8.0 8.1 8.2
gd 5.5 5.6 7.0 7.1 7.2 7.3 7.4 8.0 8.1 8.2
gearman 5.5 5.6 7.0 7.1 7.2 7.3 7.4 8.0
geoip 5.5 5.6 7.0 7.1 7.2 7.3 7.4
geos 5.5 5.6 7.0 7.1 7.2 7.3 7.4
geos 5.5 5.6 7.0 7.1 7.2 7.3 7.4 8.0 8.1 8.2
geospatial 5.5 5.6 7.0 7.1 7.2 7.3 7.4 8.0 8.1 8.2
gettext 5.5 5.6 7.0 7.1 7.2 7.3 7.4 8.0 8.1 8.2
gmagick 5.5 5.6 7.0 7.1 7.2 7.3 7.4 8.0 8.1 8.2
Expand Down Expand Up @@ -90,6 +91,7 @@ rdkafka 5.5 5.6 7.0 7.1 7.2 7.3 7.4 8.0 8.1 8.2
recode 5.5 5.6 7.0 7.1 7.2 7.3
redis 5.5 5.6 7.0 7.1 7.2 7.3 7.4 8.0 8.1 8.2
relay 7.4 8.0 8.1 8.2
seasclick 5.5 5.6 7.0 7.1 7.2 7.3 7.4 8.0 8.1 8.2
seaslog 5.5 5.6 7.0 7.1 7.2 7.3 7.4 8.0 8.1 8.2
shmop 5.5 5.6 7.0 7.1 7.2 7.3 7.4 8.0 8.1 8.2
simdjson 7.1 7.2 7.3 7.4 8.0 8.1 8.2
Expand All @@ -113,6 +115,7 @@ sysvmsg 5.5 5.6 7.0 7.1 7.2 7.3 7.4 8.0 8.1 8.2
sysvsem 5.5 5.6 7.0 7.1 7.2 7.3 7.4 8.0 8.1 8.2
sysvshm 5.5 5.6 7.0 7.1 7.2 7.3 7.4 8.0 8.1 8.2
tensor 7.2 7.3 7.4 8.0
tideways 5.5 5.6 7.0 7.1 7.2 7.3 7.4 8.0 8.1 8.2
tidy 5.5 5.6 7.0 7.1 7.2 7.3 7.4 8.0 8.1 8.2
timezonedb 5.5 5.6 7.0 7.1 7.2 7.3 7.4 8.0 8.1 8.2
uopz 5.5 5.6 7.0 7.1 7.2 7.3 7.4 8.0 8.1 8.2
Expand Down
92 changes: 86 additions & 6 deletions install-php-extensions
Original file line number Diff line number Diff line change
Expand Up @@ -722,7 +722,6 @@ buildRequiredPackageLists() {
fi
;;
ddtrace@debian)
buildRequiredPackageLists_persistent="$buildRequiredPackageLists_persistent curl"
buildRequiredPackageLists_volatile="$buildRequiredPackageLists_volatile libcurl4-openssl-dev"
if test $DISTRO_MAJMIN_VERSION -ge 1200; then
# Debian bookworm is the minimum version that comes with cargo 1.64.0+
Expand All @@ -745,6 +744,14 @@ buildRequiredPackageLists() {
buildRequiredPackageLists_volatile="$buildRequiredPackageLists_volatile libmpdec-dev"
fi
;;
ecma_intl@alpine)
buildRequiredPackageLists_persistent="$buildRequiredPackageLists_persistent icu-libs $buildRequiredPackageLists_icuPersistent"
buildRequiredPackageLists_volatile="$buildRequiredPackageLists_volatile icu-dev libidn-dev"
;;
ecma_intl@debian)
buildRequiredPackageLists_persistent="$buildRequiredPackageLists_persistent ^libicu[0-9]+$"
buildRequiredPackageLists_volatile="$buildRequiredPackageLists_volatile libicu-dev"
;;
enchant@alpine)
if test $DISTRO_MAJMIN_VERSION -ge 312; then
if test $PHP_MAJMIN_VERSION -ge 800; then
Expand Down Expand Up @@ -1188,6 +1195,9 @@ buildRequiredPackageLists() {
buildRequiredPackageLists_persistent="$buildRequiredPackageLists_persistent libssl1.1"
fi
;;
seasclick@alpine)
buildRequiredPackageLists_persistent="$buildRequiredPackageLists_persistent libstdc++"
;;
simdjson@alpine)
buildRequiredPackageLists_persistent="$buildRequiredPackageLists_persistent libstdc++"
;;
Expand Down Expand Up @@ -1640,6 +1650,9 @@ getModuleFullPath() {
apcu_bc)
getModuleFullPath_path="$PHP_EXTDIR/apc.so"
;;
seasclick)
getModuleFullPath_path="$PHP_EXTDIR/SeasClick.so"
;;
*)
getModuleFullPath_path="$PHP_EXTDIR/$1.so"
;;
Expand Down Expand Up @@ -2549,6 +2562,8 @@ installRemoteModule() {
installRemoteModule_version=1.9.3
elif test $PHP_MAJMIN_VERSION -le 505; then
installRemoteModule_version=1.9.4
elif test $PHP_MAJMIN_VERSION -le 703; then
installRemoteModule_version=1.11.0
fi
fi
;;
Expand Down Expand Up @@ -2660,12 +2675,18 @@ installRemoteModule() {
if test $DISTRO_MAJMIN_VERSION -lt 317; then
# Alpine 3.17 is the minimum version that comes with cargo 1.64.0+
installRemoteModule_version=0.87.2
elif test $DISTRO_MAJMIN_VERSION -lt 318; then
# Alpine 3.18 is the minimum version that comes with cargo 1.71.0+
installRemoteModule_version=0.89.0
fi
;;
debian)
if test $DISTRO_MAJMIN_VERSION -lt 1200; then
# Debian bookworm is the minimum version that comes with cargo 1.64.0+
installRemoteModule_version=0.87.2
elif test $DISTRO_MAJMIN_VERSION -le 1300; then
# Newer ddtrace versions require cargo 1.71.0+, but bookworm comes with cargo 1.65.0
installRemoteModule_version=0.89.0
fi
;;
esac
Expand Down Expand Up @@ -2695,6 +2716,11 @@ installRemoteModule() {
fi
fi
;;
ecma_intl)
if test -z "$installRemoteModule_version"; then
installRemoteModule_version=alpha
fi
;;
event)
installRemoteModule_version="$(resolvePeclStabilityVersion "$installRemoteModule_module" "$installRemoteModule_version")"
if test -z "$installRemoteModule_version" || test $(compareVersions "$installRemoteModule_version" 2.4.0) -ge 0; then
Expand Down Expand Up @@ -2785,7 +2811,7 @@ installRemoteModule() {
geos)
if test -z "$installRemoteModule_path"; then
if test -z "$installRemoteModule_version"; then
installRemoteModule_version=71b5f9001512e16d3cf4657b517e8a051d6ef36f
installRemoteModule_version=0def35611f773c951432f1f06a155471a5cb7611
fi
installRemoteModule_src="$(getPackageSource https://git.osgeo.org/gitea/geos/php-geos/archive/$installRemoteModule_version.tar.gz)"
cd "$installRemoteModule_src"
Expand Down Expand Up @@ -2831,7 +2857,7 @@ installRemoteModule() {
fi
if test -z "$installRemoteModule_version"; then
# See https://github.com/protocolbuffers/protobuf/issues/10619
installRemoteModule_version=1.56.0
installRemoteModule_version=1.57.0
fi
if test -z "$installRemoteModule_version" || test "$installRemoteModule_version" = 1.35.0; then
case "$DISTRO_VERSION" in
Expand Down Expand Up @@ -3157,7 +3183,7 @@ installRemoteModule() {
installRemoteModule_version=3.12.4
else
# See https://github.com/protocolbuffers/protobuf/issues/10619
installRemoteModule_version=3.23.4
installRemoteModule_version=3.24.2
fi
fi
;;
Expand Down Expand Up @@ -3287,6 +3313,13 @@ installRemoteModule() {
installRemoteModule_ini_extra="$(grep -vE '^[ \t]*extension[ \t]*=' $installRemoteModule_src/relay.ini)"
installRemoteModule_manuallyInstalled=1
;;
seasclick)
if test -z "$installRemoteModule_version"; then
if test $PHP_MAJMIN_VERSION -le 506; then
installRemoteModule_version=0.1.0
fi
fi
;;
snappy)
if test -z "$installRemoteModule_path"; then
if test -z "$installRemoteModule_version"; then
Expand Down Expand Up @@ -3345,7 +3378,7 @@ installRemoteModule() {
spx)
if test -z "$installRemoteModule_path"; then
if test -z "$installRemoteModule_version"; then
installRemoteModule_version=v0.4.13
installRemoteModule_version=v0.4.14
fi
if test "${installRemoteModule_version%.*}" = "$installRemoteModule_version"; then
installRemoteModule_displayVersion="$installRemoteModule_version"
Expand Down Expand Up @@ -3607,6 +3640,53 @@ installRemoteModule() {
fi
fi
;;
tideways)
case "$DISTRO" in
alpine)
case $(uname -m) in
aarch64 | arm64 | armv8)
installRemoteModule_architecture=alpine-arm64
;;
*)
installRemoteModule_architecture=alpine
;;
esac
;;
debian)
case $(uname -m) in
aarch64 | arm64 | armv8)
installRemoteModule_architecture=arm64
;;
*)
installRemoteModule_architecture=x86_64
;;
esac
;;
esac
installRemoteModule_url="$(curl -sSLf -o - https://tideways.com/profiler/downloads | grep -Eo "\"[^\"]+/tideways-php-([0-9]+\.[0-9]+\.[0-9]+)-$installRemoteModule_architecture.tar.gz\"" | cut -d'"' -f2)"
printf 'Downloading tideways from %s\n' "$installRemoteModule_url"
installRemoteModule_src="$(getPackageSource $installRemoteModule_url)"
if test -d "$installRemoteModule_src/dist"; then
installRemoteModule_src="$installRemoteModule_src/dist"
fi
installRemoteModule_src="$installRemoteModule_src/tideways-php"
case "$DISTRO" in
alpine)
installRemoteModule_src="$installRemoteModule_src-alpine"
;;
esac
installRemoteModule_src="$installRemoteModule_src-$PHP_MAJDOTMIN_VERSION"
if test $PHP_THREADSAFE -eq 1; then
installRemoteModule_src="$installRemoteModule_src-zts"
fi
installRemoteModule_src="$installRemoteModule_src.so"
if ! test -f "$installRemoteModule_src"; then
echo 'tideways does not support the current environment' >&2
exit 1
fi
mv "$installRemoteModule_src" $(getPHPExtensionsDir)/tideways.so
installRemoteModule_manuallyInstalled=1
;;
uopz)
if test -z "$installRemoteModule_version"; then
if test $PHP_MAJMIN_VERSION -le 506; then
Expand Down Expand Up @@ -3838,7 +3918,7 @@ moduleMayUsePecl() {
@composer | @fix_letsencrypt)
return 1
;;
blackfire | geos | ioncube_loader | snuffleupagus | sourceguardian | spx | tdlib)
blackfire | geos | ioncube_loader | snuffleupagus | sourceguardian | spx | tdlib | tideways)
return 1
;;
esac
Expand Down

0 comments on commit 2cd7673

Please sign in to comment.