* Package name : php-symfony-dependency-injection Version : 3.4.6 Upstream Author : Fabien Potencier <fabien@symfony.com> * URL : https://github.com/symfony/dependency-injection * License : MIT Programming Lang: PHP Section : php Description: Symfony Dependency Injection component This package provides the Symfony Dependency Injection component, which allows developers to standardize and centralize the way objects are constructed and dependencies are managed in PHP applications. It implements a powerful dependency injection container that supports autowiring, service configuration, and advanced features for managing complex object graphs. The component is widely used in the Symfony framework and by many other PHP projects to promote modular, testable, and maintainable code. Rationale: This package is required as a dependency for FOSSology, an open source license compliance system. FOSSology uses PHP-based tools for source code analysis and license detection, which rely on the Symfony Dependency Injection component to manage service objects and their dependencies in a flexible and maintainable way. The php-symfony-dependency-injection package is essential for: - Managing service dependencies in FOSSology's PHP components - Supporting modular and testable code architecture - Enabling advanced service configuration and autowiring - Promoting maintainable and scalable code in FOSSology - Ensuring compatibility with other Symfony-based libraries Technical Details: - Requires PHP >= 5.5.9 - Implements a feature-rich dependency injection container - Supports autowiring, service configuration, and advanced features - MIT licensed for maximum compatibility - Widely used in the PHP ecosystem Dependencies: - php (>= 5.5.9) - Build dependencies: phpunit, php-codesniffer The package will be maintained by Ahmed Gamal <ahmed.gamal9541@gmail.com> as part of the FOSSology packaging effort.
This package already exists in Debian and is provided by Symfony: https://tracker.debian.org/pkg/symfony
Dear William and Debian maintainers, I need to clarify why this ITP was filed despite the existence of php-symfony-dependency-injection in Debian. TECHNICAL INCOMPATIBILITY: FOSSology specifically requires Symfony Dependency Injection version 3.4.6, while the current Debian package provides version 5.4.x+. These major versions have breaking API changes that prevent FOSSology from functioning. CONCRETE EVIDENCE: During FOSSology integration testing, we encountered this exact dependency conflict: "php-symfony-console (5.4.4+dfsg-1ubuntu8) breaks php-symfony-dependency-injection (<< 4.4~~)" This error demonstrates that Symfony 5.x series is fundamentally incompatible with the 3.4.x series that FOSSology requires. VERSION COMPATIBILITY ISSUE: - FOSSology was built against Symfony 3.4.x APIs - Debian's Symfony 5.4.x has breaking changes in: - Container interface methods - Service definition syntax - Autowiring behavior - Parameter handling PROPOSED SOLUTION: Package this as php-symfony-dependency-injection-3.4 with version-specific naming to: - Avoid conflicts with existing Debian packages - Provide the legacy version FOSSology needs - Follow Debian's established pattern for version-specific packages (php7.4-*, php8.1-*, etc.) PRECEDENT: This follows the same approach Debian uses for maintaining multiple incompatible versions of critical software when applications have specific requirements. REQUEST: Could we reopen this ITP to discuss a version-specific packaging approach? FOSSology is a significant open-source project that would benefit the Debian ecosystem, and this dependency resolution is essential for its integration. Best regards, Ahmed Gamal FOSSology Debian Packaging Team Technical details available at: https://tracker.debian.org/pkg/fossology
Dear William, Thank you for reviewing my ITP. However, I believe there's a misunderstanding about the technical requirements that needs clarification. TECHNICAL INCOMPATIBILITY ISSUE: While php-symfony-dependency-injection does exist in Debian, FOSSology specifically requires version 3.4.6, whereas the current Debian package ( https://tracker.debian.org/pkg/symfony) provides version 5.4.x+. These are not simply different versions - they have breaking API changes that make them incompatible: CONCRETE EVIDENCE FROM TESTING: During FOSSology integration, we encountered this dependency conflict: "php-symfony-console (5.4.4+dfsg-1ubuntu8) breaks php-symfony-dependency-injection (<< 4.4~~)" This error proves that Symfony 5.x cannot work with applications requiring 3.4.x APIs. BREAKING CHANGES BETWEEN VERSIONS: - Container interface methods changed - Service definition syntax modified - Autowiring behavior altered - Parameter handling restructured PROPOSED SOLUTION: Package as php-symfony-dependency-injection-3.4 with version-specific naming, similar to how Debian maintains: - php7.4-* alongside php8.1-* packages - Multiple PostgreSQL versions (postgresql-13, postgresql-14, etc.) - Different Node.js versions when applications have incompatible requirements JUSTIFICATION: FOSSology is a significant open-source license compliance system used by major organizations. Getting it into Debian requires resolving this version dependency issue. This is legitimate version-specific packaging, not duplicate work. REQUEST: Could we reopen this ITP to discuss a version-specific approach? I'm happy to adjust the package name to php-symfony-dependency-injection-3.4 to make the version distinction clear. Best regards, Ahmed Gamal FOSSology Debian Packaging Team P.S. I can provide additional technical documentation of the API incompatibilities if needed.