From d2c6d36823e0e8d8a7debcd2e023d1c88e877c1c Mon Sep 17 00:00:00 2001 From: Randy Eckenrode Date: Fri, 26 Jul 2024 19:36:44 -0400 Subject: [PATCH 1/6] php{82,83}Extensions.dom: apply upstream patch for libxml2 2.13 compatibility --- pkgs/top-level/php-packages.nix | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/pkgs/top-level/php-packages.nix b/pkgs/top-level/php-packages.nix index 23adb1c18dfeb..6c0dd9d6c56de 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" ]; + }) ]; } { From ff6f05d3cf45547a05261336bd116e0ccbec0d1f Mon Sep 17 00:00:00 2001 From: Randy Eckenrode Date: Fri, 26 Jul 2024 19:36:54 -0400 Subject: [PATCH 2/6] php{83,83}Extensions.simplexml: apply upstream patch for libxml2 2.13 compatibility --- pkgs/top-level/php-packages.nix | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/pkgs/top-level/php-packages.nix b/pkgs/top-level/php-packages.nix index 6c0dd9d6c56de..d2d2aca217559 100644 --- a/pkgs/top-level/php-packages.nix +++ b/pkgs/top-level/php-packages.nix @@ -617,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"; From ae17cd6616004933cc743963899d1d0ae3ff5389 Mon Sep 17 00:00:00 2001 From: Randy Eckenrode Date: Fri, 26 Jul 2024 19:37:00 -0400 Subject: [PATCH 3/6] php{83,83}Extensions.soap: apply upstream patch for libxml2 2.13 compatibility --- pkgs/top-level/php-packages.nix | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/pkgs/top-level/php-packages.nix b/pkgs/top-level/php-packages.nix index d2d2aca217559..7cb0709405c91 100644 --- a/pkgs/top-level/php-packages.nix +++ b/pkgs/top-level/php-packages.nix @@ -645,8 +645,20 @@ in { configureFlags = [ "--enable-soap" ]; - doCheck = false; 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"; From 99c8b8395a6d2ee1f75f5620b4ad7d1bafa96fa9 Mon Sep 17 00:00:00 2001 From: Randy Eckenrode Date: Fri, 26 Jul 2024 19:37:09 -0400 Subject: [PATCH 4/6] php{83,83}Extensions.xml: apply upstream patch for libxml2 2.13 compatibility --- pkgs/top-level/php-packages.nix | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/pkgs/top-level/php-packages.nix b/pkgs/top-level/php-packages.nix index 7cb0709405c91..75786fb26c3e0 100644 --- a/pkgs/top-level/php-packages.nix +++ b/pkgs/top-level/php-packages.nix @@ -691,6 +691,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"; From 30a6f25d29d5bad49017294bd4910a4cbdecfa4a Mon Sep 17 00:00:00 2001 From: Randy Eckenrode Date: Fri, 26 Jul 2024 19:37:16 -0400 Subject: [PATCH 5/6] php{83,83}Extensions.xmlwriter: apply upstream patch for libxml2 2.13 compatibility --- pkgs/top-level/php-packages.nix | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/pkgs/top-level/php-packages.nix b/pkgs/top-level/php-packages.nix index 75786fb26c3e0..b269fc14b1c19 100644 --- a/pkgs/top-level/php-packages.nix +++ b/pkgs/top-level/php-packages.nix @@ -721,6 +721,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"; From 313ac78d0e79bca92b405a02fe2c0b7dcd31499a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sun, 28 Jul 2024 08:19:52 +0200 Subject: [PATCH 6/6] phpExtensions.soap: back to doCheck = false (except on Darwin) On *-linux we get: > FAILED TEST SUMMARY > --------------------------------------------------------------------- > SOAP Bug #71610 - Type Confusion Vulnerability - SOAP / make_http_soap_request() [tests/bug71610.phpt] > Bug #76348 (WSDL_CACHE_MEMORY causes Segmentation fault) [tests/bugs/bug76348.phpt] Logs e.g.: https://github.com/NixOS/nixpkgs/pull/330299/checks?check_run_id=27989364591 --- pkgs/top-level/php-packages.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/top-level/php-packages.nix b/pkgs/top-level/php-packages.nix index b269fc14b1c19..de9b83df972e8 100644 --- a/pkgs/top-level/php-packages.nix +++ b/pkgs/top-level/php-packages.nix @@ -645,6 +645,7 @@ in { configureFlags = [ "--enable-soap" ]; + 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+