Package: release.debian.org
Severity: normal
Tags: bookworm
X-Debbugs-Cc: php-symfony-contra...@packages.debian.org, 
t...@security.debian.org
Control: affects -1 + src:php-symfony-contracts
User: release.debian....@packages.debian.org
Usertags: pu

[3/9 for bookworm]

This is a follow up from composer/DSA-5632-1, #1065056 and #1065057.

In order to fix a Debian-specific issue related to CVE-2024-24821, we
agreed with the security team to push related dependencies via the next
point release.

The only change (besides changelog entry) in the binary packages is of
the following kind (thanks to diffoscope), for example for
php-symfony-cache-contracts.

│ │ ├── ./usr/share/php/Symfony/Contracts/Cache/autoload.php
│ │ │ @@ -1,14 +1,14 @@
│ │ │  <?php
│ │ │  
│ │ │  // Require
│ │ │ -require_once 'Psr/Cache/autoload.php';
│ │ │ +require_once __DIR__ . '/../../../Psr/Cache/autoload.php';
│ │ │  
│ │ │  // Suggest
│ │ │ -if (stream_resolve_include_path('Symfony/Component/Cache/autoload.php')) 
{ include_once 'Symfony/Component/Cache/autoload.php'; }
│ │ │ +if (stream_resolve_include_path(__DIR__ . 
'/../../Component/Cache/autoload.php')) { include_once __DIR__ . 
'/../../Component/Cache/autoload.php'; }
│ │ │  
│ │ │  // @codingStandardsIgnoreFile
│ │ │  // @codeCoverageIgnoreStart

The goal is to ensure related dependencies are loaded from the system
path.

The attached debdiff is a lot bigger, since this source package builds
seven binary packages, and that d/rules has been adapted to keep the
testsuite at buildtime effective.

[ Checklist ]
  [x] *all* changes are documented in the d/changelog
  [x] I reviewed all changes and I approve them
  [x] attach debdiff against the package in (old)stable
  [x] the issue is verified as fixed in unstable

TIA for considering.

Cheers,

taffit
diff -Nru php-symfony-contracts-2.5.2/debian/autoload.php php-symfony-contracts-2.5.2/debian/autoload.php
--- php-symfony-contracts-2.5.2/debian/autoload.php	2022-06-18 17:59:28.000000000 +0200
+++ php-symfony-contracts-2.5.2/debian/autoload.php	2024-02-15 22:48:06.000000000 +0100
@@ -3,12 +3,12 @@
 // require_once 'Psr/Container/autoload.php'; (already required by Service)
 // require_once 'Psr/EventDispatcher/autoload.php'; (already required by EventDispatcher)
 
-require_once 'Symfony/Contracts/Cache/autoload.php';
-require_once 'Symfony/Contracts/Deprecation/autoload.php';
-require_once 'Symfony/Contracts/EventDispatcher/autoload.php';
-require_once 'Symfony/Contracts/HttpClient/autoload.php';
-require_once 'Symfony/Contracts/Service/autoload.php';
-require_once 'Symfony/Contracts/Translation/autoload.php';
+require_once __DIR__ . '/Cache/autoload.php';
+require_once __DIR__ . '/Deprecation/autoload.php';
+require_once __DIR__ . '/EventDispatcher/autoload.php';
+require_once __DIR__ . '/HttpClient/autoload.php';
+require_once __DIR__ . '/Service/autoload.php';
+require_once __DIR__ . '/Translation/autoload.php';
 
 // if (stream_resolve_include_path('Symfony/Component/Cache/autoload.php')){ (already suggested by Cache)
 //     include_once 'Symfony/Component/Cache/autoload.php';
diff -Nru php-symfony-contracts-2.5.2/debian/changelog php-symfony-contracts-2.5.2/debian/changelog
--- php-symfony-contracts-2.5.2/debian/changelog	2022-07-01 07:08:46.000000000 +0200
+++ php-symfony-contracts-2.5.2/debian/changelog	2024-02-15 22:48:06.000000000 +0100
@@ -1,3 +1,10 @@
+php-symfony-contracts (2.5.2-1+deb12u1) bookworm; urgency=medium
+
+  * Track debian/bookworm-security
+  * Force system dependencies loading
+
+ -- David Prévot <taf...@debian.org>  Thu, 15 Feb 2024 22:48:06 +0100
+
 php-symfony-contracts (2.5.2-1) unstable; urgency=medium
 
   [ Nicolas Grekas ]
diff -Nru php-symfony-contracts-2.5.2/debian/clean php-symfony-contracts-2.5.2/debian/clean
--- php-symfony-contracts-2.5.2/debian/clean	2022-06-18 17:59:28.000000000 +0200
+++ php-symfony-contracts-2.5.2/debian/clean	2024-02-15 22:48:06.000000000 +0100
@@ -1,14 +1,14 @@
 .phpunit.result.cache
+autoload.php
 Cache/autoload.php
+debian/autoloaders/
+debian/autoload.tests.php.tpl
+debian/packages_to_build/
 Deprecation/autoload.php
 EventDispatcher/autoload.php
 HttpClient/autoload.php
+Psr
 Service/autoload.php
-Tests/autoload.php
 Translation/autoload.php
-autoload.php
-debian/autoloaders/
-debian/packages_to_build/
-debian/*.tpl
 Symfony/
 vendor/
diff -Nru php-symfony-contracts-2.5.2/debian/control php-symfony-contracts-2.5.2/debian/control
--- php-symfony-contracts-2.5.2/debian/control	2022-06-18 18:24:38.000000000 +0200
+++ php-symfony-contracts-2.5.2/debian/control	2024-02-15 22:48:06.000000000 +0100
@@ -15,7 +15,7 @@
                pkg-php-tools (>= 1.41~)
 Standards-Version: 4.6.1
 Homepage: https://symfony.com/components/Contracts
-Vcs-Git: https://salsa.debian.org/php-team/pear/php-symfony-contracts.git -b debian/bookworm
+Vcs-Git: https://salsa.debian.org/php-team/pear/php-symfony-contracts.git -b debian/bookworm-security
 Vcs-Browser: https://salsa.debian.org/php-team/pear/php-symfony-contracts
 Rules-Requires-Root: no
 
diff -Nru php-symfony-contracts-2.5.2/debian/gbp.conf php-symfony-contracts-2.5.2/debian/gbp.conf
--- php-symfony-contracts-2.5.2/debian/gbp.conf	2022-06-18 18:24:38.000000000 +0200
+++ php-symfony-contracts-2.5.2/debian/gbp.conf	2024-02-15 22:48:06.000000000 +0100
@@ -1,5 +1,5 @@
 [DEFAULT]
-debian-branch = debian/bookworm
+debian-branch = debian/bookworm-security
 pristine-tar = True
 upstream-branch = upstream-2
 upstream-vcs-tag = v%(version%~%-)s
diff -Nru php-symfony-contracts-2.5.2/debian/php-symfony-cache-contracts.autoload.php.tpl php-symfony-contracts-2.5.2/debian/php-symfony-cache-contracts.autoload.php.tpl
--- php-symfony-contracts-2.5.2/debian/php-symfony-cache-contracts.autoload.php.tpl	1970-01-01 01:00:00.000000000 +0100
+++ php-symfony-contracts-2.5.2/debian/php-symfony-cache-contracts.autoload.php.tpl	2024-02-15 22:48:06.000000000 +0100
@@ -0,0 +1,30 @@
+<?php
+
+// Require
+require_once __DIR__ . '/../../../Psr/Cache/autoload.php';
+
+// Suggest
+if (stream_resolve_include_path(__DIR__ . '/../../Component/Cache/autoload.php')) { include_once __DIR__ . '/../../Component/Cache/autoload.php'; }
+
+// @codingStandardsIgnoreFile
+// @codeCoverageIgnoreStart
+// this is an autogenerated file - do not edit
+spl_autoload_register(
+    function($class) {
+        static $classes = null;
+        if ($classes === null) {
+            $classes = array(
+                ___CLASSLIST___
+            );
+        }
+        $cn = strtolower($class);
+        if (isset($classes[$cn])) {
+            require ___BASEDIR___$classes[$cn];
+        }
+    },
+    ___EXCEPTION___,
+    ___PREPEND___
+);
+// @codeCoverageIgnoreEnd
+
+// Files
diff -Nru php-symfony-contracts-2.5.2/debian/php-symfony-deprecation-contracts.autoload.php.tpl php-symfony-contracts-2.5.2/debian/php-symfony-deprecation-contracts.autoload.php.tpl
--- php-symfony-contracts-2.5.2/debian/php-symfony-deprecation-contracts.autoload.php.tpl	1970-01-01 01:00:00.000000000 +0100
+++ php-symfony-contracts-2.5.2/debian/php-symfony-deprecation-contracts.autoload.php.tpl	2024-02-15 22:48:06.000000000 +0100
@@ -0,0 +1,29 @@
+<?php
+
+// Require
+
+// Suggest
+
+// @codingStandardsIgnoreFile
+// @codeCoverageIgnoreStart
+// this is an autogenerated file - do not edit
+spl_autoload_register(
+    function($class) {
+        static $classes = null;
+        if ($classes === null) {
+            $classes = array(
+                ___CLASSLIST___
+            );
+        }
+        $cn = strtolower($class);
+        if (isset($classes[$cn])) {
+            require ___BASEDIR___$classes[$cn];
+        }
+    },
+    ___EXCEPTION___,
+    ___PREPEND___
+);
+// @codeCoverageIgnoreEnd
+
+// Files
+require_once __DIR__.'/function.php';
diff -Nru php-symfony-contracts-2.5.2/debian/php-symfony-event-dispatcher-contracts.autoload.php.tpl php-symfony-contracts-2.5.2/debian/php-symfony-event-dispatcher-contracts.autoload.php.tpl
--- php-symfony-contracts-2.5.2/debian/php-symfony-event-dispatcher-contracts.autoload.php.tpl	1970-01-01 01:00:00.000000000 +0100
+++ php-symfony-contracts-2.5.2/debian/php-symfony-event-dispatcher-contracts.autoload.php.tpl	2024-02-15 22:48:06.000000000 +0100
@@ -0,0 +1,30 @@
+<?php
+
+// Require
+require_once __DIR__ . '/../../../Psr/EventDispatcher/autoload.php';
+
+// Suggest
+if (stream_resolve_include_path(__DIR__ . '/../../Component/EventDispatcher/autoload.php')) { include_once __DIR__ . '/../../Component/EventDispatcher/autoload.php'; }
+
+// @codingStandardsIgnoreFile
+// @codeCoverageIgnoreStart
+// this is an autogenerated file - do not edit
+spl_autoload_register(
+    function($class) {
+        static $classes = null;
+        if ($classes === null) {
+            $classes = array(
+                ___CLASSLIST___
+            );
+        }
+        $cn = strtolower($class);
+        if (isset($classes[$cn])) {
+            require ___BASEDIR___$classes[$cn];
+        }
+    },
+    ___EXCEPTION___,
+    ___PREPEND___
+);
+// @codeCoverageIgnoreEnd
+
+// Files
diff -Nru php-symfony-contracts-2.5.2/debian/php-symfony-http-client-contracts.autoload.php.tpl php-symfony-contracts-2.5.2/debian/php-symfony-http-client-contracts.autoload.php.tpl
--- php-symfony-contracts-2.5.2/debian/php-symfony-http-client-contracts.autoload.php.tpl	1970-01-01 01:00:00.000000000 +0100
+++ php-symfony-contracts-2.5.2/debian/php-symfony-http-client-contracts.autoload.php.tpl	2024-02-15 22:48:06.000000000 +0100
@@ -0,0 +1,29 @@
+<?php
+
+// Require
+
+// Suggest
+if (stream_resolve_include_path(__DIR__ . '/../../Component/HttpClient/autoload.php')) { include_once __DIR__ . '/../../Component/HttpClient/autoload.php'; }
+
+// @codingStandardsIgnoreFile
+// @codeCoverageIgnoreStart
+// this is an autogenerated file - do not edit
+spl_autoload_register(
+    function($class) {
+        static $classes = null;
+        if ($classes === null) {
+            $classes = array(
+                ___CLASSLIST___
+            );
+        }
+        $cn = strtolower($class);
+        if (isset($classes[$cn])) {
+            require ___BASEDIR___$classes[$cn];
+        }
+    },
+    ___EXCEPTION___,
+    ___PREPEND___
+);
+// @codeCoverageIgnoreEnd
+
+// Files
diff -Nru php-symfony-contracts-2.5.2/debian/php-symfony-service-contracts.autoload.php.tpl php-symfony-contracts-2.5.2/debian/php-symfony-service-contracts.autoload.php.tpl
--- php-symfony-contracts-2.5.2/debian/php-symfony-service-contracts.autoload.php.tpl	1970-01-01 01:00:00.000000000 +0100
+++ php-symfony-contracts-2.5.2/debian/php-symfony-service-contracts.autoload.php.tpl	2024-02-15 22:48:06.000000000 +0100
@@ -0,0 +1,31 @@
+<?php
+
+// Require
+require_once __DIR__ . '/../../../Psr/Container/autoload.php';
+require_once __DIR__ . '/../Deprecation/autoload.php';
+
+// Suggest
+if (stream_resolve_include_path(__DIR__ . '/../../Component/DependencyInjection/autoload.php')) { include_once __DIR__ . '/../../Component/DependencyInjection/autoload.php'; }
+
+// @codingStandardsIgnoreFile
+// @codeCoverageIgnoreStart
+// this is an autogenerated file - do not edit
+spl_autoload_register(
+    function($class) {
+        static $classes = null;
+        if ($classes === null) {
+            $classes = array(
+                ___CLASSLIST___
+            );
+        }
+        $cn = strtolower($class);
+        if (isset($classes[$cn])) {
+            require ___BASEDIR___$classes[$cn];
+        }
+    },
+    ___EXCEPTION___,
+    ___PREPEND___
+);
+// @codeCoverageIgnoreEnd
+
+// Files
diff -Nru php-symfony-contracts-2.5.2/debian/php-symfony-translation-contracts.autoload.php.tpl php-symfony-contracts-2.5.2/debian/php-symfony-translation-contracts.autoload.php.tpl
--- php-symfony-contracts-2.5.2/debian/php-symfony-translation-contracts.autoload.php.tpl	1970-01-01 01:00:00.000000000 +0100
+++ php-symfony-contracts-2.5.2/debian/php-symfony-translation-contracts.autoload.php.tpl	2024-02-15 22:48:06.000000000 +0100
@@ -0,0 +1,29 @@
+<?php
+
+// Require
+
+// Suggest
+if (stream_resolve_include_path(__DIR__ . '/../../Component/Translation/autoload.php')) { include_once __DIR__ . '/../../Component/Translation/autoload.php'; }
+
+// @codingStandardsIgnoreFile
+// @codeCoverageIgnoreStart
+// this is an autogenerated file - do not edit
+spl_autoload_register(
+    function($class) {
+        static $classes = null;
+        if ($classes === null) {
+            $classes = array(
+                ___CLASSLIST___
+            );
+        }
+        $cn = strtolower($class);
+        if (isset($classes[$cn])) {
+            require ___BASEDIR___$classes[$cn];
+        }
+    },
+    ___EXCEPTION___,
+    ___PREPEND___
+);
+// @codeCoverageIgnoreEnd
+
+// Files
diff -Nru php-symfony-contracts-2.5.2/debian/rules php-symfony-contracts-2.5.2/debian/rules
--- php-symfony-contracts-2.5.2/debian/rules	2022-06-18 17:59:28.000000000 +0200
+++ php-symfony-contracts-2.5.2/debian/rules	2024-02-15 22:48:06.000000000 +0100
@@ -29,7 +29,6 @@
 	   echo "src_path='$$src_path'" >> debian/packages_to_build/$$deb_pkg_name; \
 	   echo "pkg_path='$$pkg_path'" >> debian/packages_to_build/$$deb_pkg_name; \
 	   echo "symfony $${deb_pkg_name#php-symfony-} Symfony/Contracts/$$pkg_path/autoload.php" > debian/autoloaders/$$deb_pkg_name; \
-	   phpabtpl --basedir $$src_path $$src_path/composer.json > debian/$$deb_pkg_name.autoload.php.tpl; \
 	   if [ -e debian/$$deb_pkg_name.autoload.php ]; then \
 	    cp debian/$$deb_pkg_name.autoload.php \
 		$$src_path/autoload.php ;\
@@ -43,14 +42,16 @@
 	  fi; \
 	 done
 	cp debian/autoload.php .
-	mkdir --parents vendor Symfony
+	mkdir --parents vendor Symfony/Contracts
 	phpabtpl --require symfony/contracts > debian/autoload.tests.php.tpl
 	phpab \
 		--output vendor/autoload.php \
 		--template debian/autoload.tests.php.tpl \
 		Tests
 	# Mimic expected path for tests
-	ln -s .. Symfony/Contracts
+	cp -r autoload.php Cache Deprecation EventDispatcher HttpClient Service Translation Symfony/Contracts
+	ln -s /usr/share/php/Symfony/Component Symfony
+	ln -s /usr/share/php/Psr .
 
 override_dh_auto_test:
 	phpunit

Attachment: signature.asc
Description: PGP signature

Reply via email to