|
56 | 56 |
|
57 | 57 | - name: Download extensions |
58 | 58 | run: | |
59 | | - php vendor/bin/spc download --shallow-clone -e amqp,apcu,ast,bcmath,brotli,bz2,calendar,ctype,curl,dba,decimal,deepclone,dio,dom,ds,ev,event,excimer,exif,ffi,fileinfo,filter,ftp,gd,gettext,gmp,gmssl,grpc,iconv,igbinary,imagick,inotify,intl,ldap,libxml,lz4,maxminddb,mbregex,mbstring,memcache,memcached,mongodb,msgpack,mysqli,mysqlnd,mysqlnd_parsec,mysqlnd_ed25519,odbc,opcache,openssl,opentelemetry,parallel,password-argon2,pcov,pcntl,pdo,pdo_mysql,pdo_odbc,pdo_pgsql,pdo_sqlite,pdo_sqlsrv,pgsql,phar,posix,protobuf,rar,rdkafka,readline,redis,session,shmop,simdjson,simplexml,snappy,soap,sockets,sodium,spx,sqlite3,sqlsrv,ssh2,swoole,sysvmsg,sysvsem,sysvshm,tidy,tokenizer,trader,uuid,uv,xdebug,xhprof,xlswriter,xml,xmlreader,xmlwriter,xsl,xz,yac,yaml,zip,zlib,zstd |
| 59 | + php vendor/bin/spc download --shallow-clone frankenphp -e amqp,apcu,ast,bcmath,brotli,bz2,calendar,ctype,curl,dba,decimal,deepclone,dio,dom,ds,ev,event,excimer,exif,ffi,fileinfo,filter,ftp,gd,gettext,gmp,gmssl,grpc,iconv,igbinary,imagick,inotify,intl,ldap,libxml,lz4,maxminddb,mbregex,mbstring,memcache,memcached,mongodb,msgpack,mysqli,mysqlnd,mysqlnd_parsec,mysqlnd_ed25519,odbc,opcache,openssl,opentelemetry,parallel,password-argon2,pcov,pcntl,pdo,pdo_mysql,pdo_odbc,pdo_pgsql,pdo_sqlite,pdo_sqlsrv,pgsql,phar,posix,protobuf,rar,rdkafka,readline,redis,session,shmop,simdjson,simplexml,snappy,soap,sockets,sodium,spx,sqlite3,sqlsrv,ssh2,swoole,sysvmsg,sysvsem,sysvshm,tidy,tokenizer,trader,uuid,uv,xdebug,xhprof,xlswriter,xml,xmlreader,xmlwriter,xsl,xz,yac,yaml,zip,zlib,zstd |
60 | 60 |
|
61 | 61 | - name: Probe upstream releases |
62 | 62 | id: probe-upstream |
@@ -104,22 +104,8 @@ jobs: |
104 | 104 | | add // {} |
105 | 105 | ' "$EXT_JSON") |
106 | 106 |
|
107 | | - # Map SAPI source keys (frankenphp, ...) to their package name. |
108 | | - # cli/cgi/fpm/embed live in php-src and ride php_versions bumps; |
109 | | - # any SAPI in craft.yml whose name also appears as an SPC source |
110 | | - # gets a 1:1 mapping here so its source bumps trigger a rebuild. |
111 | | - SAPI_CSV=$(sed -n 's/^sapi: *//p' craft.yml | head -1) |
112 | | - sapi_map=$(jq -nc \ |
113 | | - --arg s "$SAPI_CSV" \ |
114 | | - --slurpfile lock downloads/.lock.json ' |
115 | | - ($lock[0] // {} | keys) as $keys | |
116 | | - ($s | split(",") | map(gsub("^\\s+|\\s+$"; ""))) as $sapis | |
117 | | - [ $sapis[] | select(. as $n | $keys | index($n)) | {(.): .} ] |
118 | | - | add // {} |
119 | | - ') |
120 | | -
|
121 | | - src_to_pkg=$(jq -nc --argjson e "$ext_map" --argjson s "$sapi_map" '$e + $s') |
122 | | - echo "Source->package map size: $(jq 'length' <<< "$src_to_pkg") (ext=$(jq 'length' <<< "$ext_map"), sapi=$(jq 'length' <<< "$sapi_map"))" |
| 107 | + # frankenphp is a SAPI source; map it 1:1 to its package name. |
| 108 | + src_to_pkg=$(jq -nc --argjson e "$ext_map" '$e + {"frankenphp":"frankenphp"}') |
123 | 109 |
|
124 | 110 | changed_sources=$(jq -nc \ |
125 | 111 | --slurpfile prev .download-state/lock.prev.json \ |
|
0 commit comments