diff --git a/config/pkg/ext/ext-ev.yml b/config/pkg/ext/ext-ev.yml index 4d77ff22..dea1a1fa 100644 --- a/config/pkg/ext/ext-ev.yml +++ b/config/pkg/ext/ext-ev.yml @@ -4,7 +4,6 @@ ext-ev: source: type: pie repo: osmanov/pecl-ev - extract: php-src/ext/ev metadata: license-files: [LICENSE] license: PHP-3.01 diff --git a/config/pkg/ext/ext-grpc.yml b/config/pkg/ext/ext-grpc.yml index 5d0030a8..72b4d355 100644 --- a/config/pkg/ext/ext-grpc.yml +++ b/config/pkg/ext/ext-grpc.yml @@ -4,7 +4,6 @@ ext-grpc: source: type: pie repo: grpc/grpc-php-ext - extract: php-src/ext/grpc metadata: license-files: [LICENSE] license: Apache-2.0 diff --git a/config/pkg/ext/ext-imagick.yml b/config/pkg/ext/ext-imagick.yml index 16a56cf3..21e3915e 100644 --- a/config/pkg/ext/ext-imagick.yml +++ b/config/pkg/ext/ext-imagick.yml @@ -4,7 +4,6 @@ ext-imagick: source: type: pie repo: imagick/imagick - extract: php-src/ext/imagick metadata: license-files: [LICENSE] license: PHP-3.01 diff --git a/config/pkg/ext/ext-inotify.yml b/config/pkg/ext/ext-inotify.yml index ae684998..ee8ec8bb 100644 --- a/config/pkg/ext/ext-inotify.yml +++ b/config/pkg/ext/ext-inotify.yml @@ -4,7 +4,6 @@ ext-inotify: source: type: pie repo: arnaud-lb/inotify - extract: php-src/ext/inotify metadata: license-files: [LICENSE] license: PHP-3.01 diff --git a/config/pkg/ext/ext-memcached.yml b/config/pkg/ext/ext-memcached.yml index 49d6c93d..5f3eb81b 100644 --- a/config/pkg/ext/ext-memcached.yml +++ b/config/pkg/ext/ext-memcached.yml @@ -4,7 +4,6 @@ ext-memcached: source: type: pie repo: php-memcached/php-memcached - extract: php-src/ext/memcached metadata: license-files: [LICENSE] license: PHP-3.01 diff --git a/config/pkg/ext/ext-msgpack.yml b/config/pkg/ext/ext-msgpack.yml index e0ec6165..52e35ede 100644 --- a/config/pkg/ext/ext-msgpack.yml +++ b/config/pkg/ext/ext-msgpack.yml @@ -4,7 +4,6 @@ ext-msgpack: source: type: pie repo: msgpack/msgpack-php - extract: php-src/ext/msgpack metadata: license-files: [LICENSE] license: BSD-3-Clause diff --git a/config/pkg/ext/ext-mysqlnd_ed25519.yml b/config/pkg/ext/ext-mysqlnd_ed25519.yml index e7aa3de8..f6f79977 100644 --- a/config/pkg/ext/ext-mysqlnd_ed25519.yml +++ b/config/pkg/ext/ext-mysqlnd_ed25519.yml @@ -4,7 +4,6 @@ ext-mysqlnd_ed25519: source: type: pie repo: mariadb/mysqlnd_ed25519 - extract: php-src/ext/mysqlnd_ed25519 metadata: license-files: [LICENSE] license: BSD-3-Clause diff --git a/config/pkg/ext/ext-mysqlnd_parsec.yml b/config/pkg/ext/ext-mysqlnd_parsec.yml index 903d65c4..955058e7 100644 --- a/config/pkg/ext/ext-mysqlnd_parsec.yml +++ b/config/pkg/ext/ext-mysqlnd_parsec.yml @@ -4,7 +4,6 @@ ext-mysqlnd_parsec: source: type: pie repo: mariadb/mysqlnd_parsec - extract: php-src/ext/mysqlnd_parsec metadata: license-files: [LICENSE] license: BSD-3-Clause diff --git a/config/pkg/ext/ext-opentelemetry.yml b/config/pkg/ext/ext-opentelemetry.yml index 022dc011..5e80ad45 100644 --- a/config/pkg/ext/ext-opentelemetry.yml +++ b/config/pkg/ext/ext-opentelemetry.yml @@ -4,7 +4,6 @@ ext-opentelemetry: source: type: pie repo: open-telemetry/ext-opentelemetry - extract: php-src/ext/opentelemetry metadata: license-files: [LICENSE] license: Apache-2.0 diff --git a/config/pkg/ext/ext-parallel.yml b/config/pkg/ext/ext-parallel.yml index 821d6038..d9ed0b2f 100644 --- a/config/pkg/ext/ext-parallel.yml +++ b/config/pkg/ext/ext-parallel.yml @@ -4,7 +4,6 @@ ext-parallel: source: type: pie repo: pecl/parallel - extract: php-src/ext/parallel metadata: license-files: [LICENSE] license: PHP-3.01 diff --git a/config/pkg/ext/ext-pcov.yml b/config/pkg/ext/ext-pcov.yml index e4d7ff07..59a5fbbe 100644 --- a/config/pkg/ext/ext-pcov.yml +++ b/config/pkg/ext/ext-pcov.yml @@ -4,7 +4,6 @@ ext-pcov: source: type: pie repo: pecl/pcov - extract: php-src/ext/pcov metadata: license-files: [LICENSE] license: PHP-3.01 diff --git a/config/pkg/ext/ext-redis.yml b/config/pkg/ext/ext-redis.yml index 42705c67..84f603e3 100644 --- a/config/pkg/ext/ext-redis.yml +++ b/config/pkg/ext/ext-redis.yml @@ -4,7 +4,6 @@ ext-redis: source: type: pie repo: phpredis/phpredis - extract: php-src/ext/redis metadata: license-files: [LICENSE] license: PHP-3.01 diff --git a/config/pkg/ext/ext-spx.yml b/config/pkg/ext/ext-spx.yml index edf41f51..32f7a2e1 100644 --- a/config/pkg/ext/ext-spx.yml +++ b/config/pkg/ext/ext-spx.yml @@ -4,7 +4,6 @@ ext-spx: source: type: pie repo: noisebynorthwest/php-spx - extract: php-src/ext/spx metadata: license-files: [LICENSE] license: GPL-3.0-or-later diff --git a/config/pkg/ext/ext-uuid.yml b/config/pkg/ext/ext-uuid.yml index 2c956504..e2e05531 100644 --- a/config/pkg/ext/ext-uuid.yml +++ b/config/pkg/ext/ext-uuid.yml @@ -4,7 +4,6 @@ ext-uuid: source: type: pie repo: pecl/uuid - extract: php-src/ext/uuid metadata: license-files: [LICENSE] license: LGPL-2.1-only diff --git a/config/pkg/ext/ext-xlswriter.yml b/config/pkg/ext/ext-xlswriter.yml index 8e92489c..7b211cbc 100644 --- a/config/pkg/ext/ext-xlswriter.yml +++ b/config/pkg/ext/ext-xlswriter.yml @@ -4,7 +4,6 @@ ext-xlswriter: source: type: pie repo: viest/xlswriter - extract: php-src/ext/xlswriter metadata: license-files: [LICENSE] license: BSD-2-Clause diff --git a/config/pkg/ext/ext-zip.yml b/config/pkg/ext/ext-zip.yml index f4995300..92535305 100644 --- a/config/pkg/ext/ext-zip.yml +++ b/config/pkg/ext/ext-zip.yml @@ -4,7 +4,6 @@ ext-zip: source: type: pie repo: pecl/zip - extract: php-src/ext/zip metadata: license-files: [LICENSE] license: PHP-3.01 diff --git a/src/StaticPHP/Artifact/Downloader/Type/PIE.php b/src/StaticPHP/Artifact/Downloader/Type/PIE.php index b2fba91a..1dd1c1c0 100644 --- a/src/StaticPHP/Artifact/Downloader/Type/PIE.php +++ b/src/StaticPHP/Artifact/Downloader/Type/PIE.php @@ -22,12 +22,13 @@ class PIE implements DownloadTypeInterface, CheckUpdateInterface if (!$dist_url || !$dist_type) { throw new DownloaderException("failed to find {$name} dist info from packagist"); } + $extract = $config['extract'] ?? ('php-src/ext/' . strtolower(preg_replace('/^ext-/i', '', $name))); $name = str_replace('/', '_', $config['repo']); $version = $first['version'] ?? 'unknown'; $filename = "{$name}-{$version}." . ($dist_type === 'zip' ? 'zip' : 'tar.gz'); $path = DOWNLOAD_PATH . DIRECTORY_SEPARATOR . $filename; default_shell()->executeCurlDownload($dist_url, $path, retries: $downloader->getRetry()); - return DownloadResult::archive($filename, $config, $config['extract'] ?? null, version: $version, downloader: static::class); + return DownloadResult::archive($filename, $config, $extract, version: $version, downloader: static::class); } public function checkUpdate(string $name, array $config, ?string $old_version, ArtifactDownloader $downloader): CheckUpdateResult