Skip to content

Comments

Fix Windows extension install from downloads.php.net#515

Open
GhostPirateBob wants to merge 2 commits intophp:1.4.xfrom
GhostPirateBob:1.4.x-arch-all-names
Open

Fix Windows extension install from downloads.php.net#515
GhostPirateBob wants to merge 2 commits intophp:1.4.xfrom
GhostPirateBob:1.4.x-arch-all-names

Conversation

@GhostPirateBob
Copy link

@GhostPirateBob GhostPirateBob commented Feb 19, 2026

Fixes #513

G'day folks!

This is my first contribution to this repo, so please let me know if there’s a preferred way to structure things.

I had a weird issue on Windows with the latest nightly and 1.3.8 stable where pie install apcu/apcu didn't work, even though there was a valid zip file and dll for my version.

Anyway turns out it was to do with inconsistent naming across different $arch so I made a PR to fix it.

I also ran into another weird build workflow issue while doing this PR, but I split it off into a second one because it was somewhat unrelated (see #514 and #512).

Cheers!

gpb
✌(◕‿-)✌

Summary

  • Adds Architecture::allNames() returning all known name variants per architecture (e.g. x86_64 + x64, arm64 + aarch64), so asset filename matching works across platforms that use different conventions
  • Updates WindowsExtensionAssetName to generate filename variants covering all arch aliases and version formats (with/without v prefix), fixing installs from sources like downloads.php.net
  • Updates PrePackagedBinaryAssetName and GithubPackageReleaseAssets to use allNames() for broader asset matching
  • Adds fallback for simple DLL names (php_<ext>.dll) used by downloads.php.net

After fix:

2026-02-18 23_50_44-

- Generate asset name variants for "x64" arch (not just "x86_64") and versions without "v" prefix
- Add Architecture::windowsName() for conventional Windows arch labels
- Fall back to downloads.php.net/~windows/pecl/releases/ when GitHub release has no matching Windows binary
- Support simple DLL naming (e.g. "php_apcu.dll") used in downloads.php.net zips
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Windows extension install fails due to architecture naming mismatch (x86_64 vs x64)

1 participant