* Package name : php-symfony-console Version : 3.4.6 Upstream Author : Fabien Potencier <fabien@symfony.com> * URL : https://github.com/symfony/console * License : MIT Programming Lang: PHP Section : php Description: Symfony Console component This package provides the Symfony Console component, a library that eases the creation of beautiful and testable command-line interfaces in PHP. It allows developers to build powerful CLI tools with input parsing, output formatting, progress bars, and more, following best practices for usability and maintainability. The component is widely used in the Symfony framework and by many other PHP projects to provide robust and user-friendly command-line tools. 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, and the Symfony Console component is used to implement command-line utilities and scripts within the project. The php-symfony-console package is essential for: - Building and managing CLI tools in FOSSology's PHP components - Supporting interactive and automated command-line operations - Providing a consistent and user-friendly CLI experience - Enabling advanced input/output handling and progress reporting - Ensuring compatibility with other Symfony-based libraries Technical Details: - Requires PHP >= 5.5.9 - Implements a feature-rich command-line interface library - Supports input parsing, output formatting, and progress bars - 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.
Please do some research before opening ITP/RFP bugs. This package already exists in Debian.
Dear William, I need to address a critical version compatibility issue that was overlooked in the closure of this ITP. VERSION INCOMPATIBILITY: FOSSology requires php-symfony-console version 3.4.6, while current Debian provides version 5.4.x+. These major versions have breaking API changes that prevent FOSSology from functioning. CONCRETE EVIDENCE FROM SYSTEM TESTING: We encountered this exact dependency conflict during FOSSology integration: "php-symfony-console (5.4.4+dfsg-1ubuntu8) breaks php-symfony-dependency-injection (<< 4.4~~)" This error proves that Symfony Console 5.x is fundamentally incompatible with applications requiring 3.4.x APIs. MAJOR BREAKING CHANGES BETWEEN VERSIONS: Symfony Console 3.4 → 5.4 introduced: - Command class constructor signature changes - Input/Output interface modifications - Helper class API restructuring - Event system overhaul - Application class method changes TECHNICAL REQUIREMENT: FOSSology's CLI components were built against Symfony 3.4.6 APIs. Migrating to 5.x would require extensive code refactoring throughout FOSSology's command-line interfaces, which is beyond the scope of packaging work. PROPOSED SOLUTION: Package as php-symfony-console-3.4 with version-specific naming to: - Provide legacy API compatibility for FOSSology - Avoid conflicts with existing Debian packages - Follow established Debian patterns for version-specific packages DEBIAN PRECEDENT: This follows the same approach used for: - php7.4-* and php8.1-* packages (major PHP version incompatibilities) - postgresql-13, postgresql-14, postgresql-15 (breaking database changes) - python3.9, python3.10, python3.11 (language version requirements) JUSTIFICATION: FOSSology is a mature open-source license compliance system used by major organizations. Its integration into Debian requires resolving these version dependencies without forcing massive upstream code changes. REQUEST: Could we reopen this ITP to discuss version-specific packaging? I'm willing to adjust the package name to php-symfony-console-3.4 to clearly indicate the legacy version. Best regards, Ahmed Gamal FOSSology Debian Packaging Team Documentation: https://symfony.com/doc/3.4/console.html vs https://symfony.com/doc/5.4/console.html
Dear William, I need to reopen this ITP due to a critical version incompatibility that was not considered. TECHNICAL INCOMPATIBILITY: FOSSology requires Symfony Console 3.4.6, but current Debian provides 5.4.x+. These major versions have breaking API changes that prevent FOSSology from functioning. CONCRETE EVIDENCE: During FOSSology integration: "php-symfony-console (5.4.4+dfsg-1ubuntu8) breaks php-symfony-dependency-injection (<< 4.4~~)" This proves Symfony 5.x cannot work with FOSSology's 3.4.x-based components. BREAKING CHANGES 3.4 → 5.x: - Command class constructor changes - Input/Output interface modifications - Helper class API restructuring - Application class method changes MIGRATION SCOPE: Updating FOSSology to Symfony 5.x would require rewriting CLI components throughout the codebase - beyond packaging scope. PROPOSED SOLUTION: Package as php-symfony-console-3.4 (version-specific naming) following Debian's pattern for incompatible framework versions. PRECEDENT: Similar to php7.4/php8.1, postgresql-13/14/15, python3.9/3.10/3.11 for version incompatibilities. REQUEST: Please reopen to discuss version-specific packaging for FOSSology compatibility. Best regards, Ahmed Gamal FOSSology Debian Packaging Team