diff --git a/pkgs/top-level/php-packages.nix b/pkgs/top-level/php-packages.nix index 23adb1c18dfeb..de9b83df972e8 100644 --- a/pkgs/top-level/php-packages.nix +++ b/pkgs/top-level/php-packages.nix @@ -393,6 +393,18 @@ in { "NEWS" ]; }) + ] ++ lib.optionals (lib.versions.majorMinor php.version == "8.2" && lib.versionOlder php.version "8.2.22") [ + # Fixes compatibility with libxml2 2.13. Part of 8.3.10RC1+, 8.2.22RC1+ + (fetchpatch { + url = "https://github.com/php/php-src/commit/4fe821311cafb18ca8bdf20b9d796c48a13ba552.diff?full_index=1"; + hash = "sha256-YC3I0BQi3o3+VmRu/UqpqPpaSC+ekPqzbORTHftbPvY="; + }) + ] ++ lib.optionals (lib.versions.majorMinor php.version == "8.3" && lib.versionOlder php.version "8.3.10") [ + (fetchpatch { + url = "https://github.com/php/php-src/commit/ecf0bb0fd12132d853969c5e9a212e5f627f2da2.diff?full_index=1"; + hash = "sha256-sodGODHb4l04P0srn3L8l3K+DjZzCsCNbamfkmIyF+k="; + excludes = [ "NEWS" ]; + }) ]; } { @@ -605,6 +617,19 @@ in { configureFlags = [ "--enable-simplexml" ]; + patches = lib.optionals (lib.versions.majorMinor php.version == "8.2" && lib.versionOlder php.version "8.2.22") [ + # Fixes compatibility with libxml2 2.13. Part of 8.3.10RC1+, 8.2.22RC1+ + (fetchpatch { + url = "https://github.com/php/php-src/commit/4fe821311cafb18ca8bdf20b9d796c48a13ba552.diff?full_index=1"; + hash = "sha256-YC3I0BQi3o3+VmRu/UqpqPpaSC+ekPqzbORTHftbPvY="; + }) + ] ++ lib.optionals (lib.versions.majorMinor php.version == "8.3" && lib.versionOlder php.version "8.3.10") [ + (fetchpatch { + url = "https://github.com/php/php-src/commit/ecf0bb0fd12132d853969c5e9a212e5f627f2da2.diff?full_index=1"; + hash = "sha256-sodGODHb4l04P0srn3L8l3K+DjZzCsCNbamfkmIyF+k="; + excludes = [ "NEWS" ]; + }) + ]; } { name = "snmp"; @@ -620,8 +645,21 @@ in { configureFlags = [ "--enable-soap" ]; - doCheck = false; + doCheck = stdenv.isDarwin; # TODO: a couple tests still fail on *-linux internalDeps = [ php.extensions.session ]; + patches = lib.optionals (lib.versions.majorMinor php.version == "8.2" && lib.versionOlder php.version "8.2.22") [ + # Fixes compatibility with libxml2 2.13. Part of 8.3.10RC1+, 8.2.22RC1+ + (fetchpatch { + url = "https://github.com/php/php-src/commit/4fe821311cafb18ca8bdf20b9d796c48a13ba552.diff?full_index=1"; + hash = "sha256-YC3I0BQi3o3+VmRu/UqpqPpaSC+ekPqzbORTHftbPvY="; + }) + ] ++ lib.optionals (lib.versions.majorMinor php.version == "8.3" && lib.versionOlder php.version "8.3.10") [ + (fetchpatch { + url = "https://github.com/php/php-src/commit/ecf0bb0fd12132d853969c5e9a212e5f627f2da2.diff?full_index=1"; + hash = "sha256-sodGODHb4l04P0srn3L8l3K+DjZzCsCNbamfkmIyF+k="; + excludes = [ "NEWS" ]; + }) + ]; } { name = "sockets"; @@ -654,6 +692,19 @@ in { "--enable-xml" ]; doCheck = false; + patches = lib.optionals (lib.versions.majorMinor php.version == "8.2" && lib.versionOlder php.version "8.2.22") [ + # Fixes compatibility with libxml2 2.13. Part of 8.3.10RC1+, 8.2.22RC1+ + (fetchpatch { + url = "https://github.com/php/php-src/commit/4fe821311cafb18ca8bdf20b9d796c48a13ba552.diff?full_index=1"; + hash = "sha256-YC3I0BQi3o3+VmRu/UqpqPpaSC+ekPqzbORTHftbPvY="; + }) + ] ++ lib.optionals (lib.versions.majorMinor php.version == "8.3" && lib.versionOlder php.version "8.3.10") [ + (fetchpatch { + url = "https://github.com/php/php-src/commit/ecf0bb0fd12132d853969c5e9a212e5f627f2da2.diff?full_index=1"; + hash = "sha256-sodGODHb4l04P0srn3L8l3K+DjZzCsCNbamfkmIyF+k="; + excludes = [ "NEWS" ]; + }) + ]; } { name = "xmlreader"; @@ -671,6 +722,19 @@ in { configureFlags = [ "--enable-xmlwriter" ]; + patches = lib.optionals (lib.versions.majorMinor php.version == "8.2" && lib.versionOlder php.version "8.2.22") [ + # Fixes compatibility with libxml2 2.13. Part of 8.3.10RC1+, 8.2.22RC1+ + (fetchpatch { + url = "https://github.com/php/php-src/commit/4fe821311cafb18ca8bdf20b9d796c48a13ba552.diff?full_index=1"; + hash = "sha256-YC3I0BQi3o3+VmRu/UqpqPpaSC+ekPqzbORTHftbPvY="; + }) + ] ++ lib.optionals (lib.versions.majorMinor php.version == "8.3" && lib.versionOlder php.version "8.3.10") [ + (fetchpatch { + url = "https://github.com/php/php-src/commit/ecf0bb0fd12132d853969c5e9a212e5f627f2da2.diff?full_index=1"; + hash = "sha256-sodGODHb4l04P0srn3L8l3K+DjZzCsCNbamfkmIyF+k="; + excludes = [ "NEWS" ]; + }) + ]; } { name = "xsl";