#1109625 ITP: php-psr-http-message -- Common interface for HTTP messages

Package:
wnpp
Source:
wnpp
Submitter:
Ahmed Gamal
Date:
2025-08-10 18:23:01 UTC
Severity:
normal
Tags:
#1109625#5
Date:
2025-07-21 04:44:47 UTC
From:
To:
* Package name    : php-psr-http-message
  Version         : 1.0.1
  Upstream Author : PHP-FIG <http://www.php-fig.org/>
* URL             : https://github.com/php-fig/http-message
* License         : MIT
  Programming Lang: PHP
  Section         : php

Description:
 Common interface for HTTP messages

 This package provides common interfaces for HTTP messages as defined by
PSR-7
 (HTTP Message Interface). It is part of the PHP Standards Recommendations
 (PSR) for HTTP message interfaces.

 The package contains the standard interfaces for HTTP requests, responses,
 server requests, streams, and uploaded files, ensuring interoperability
 between different HTTP message implementations and providing a common
 foundation for HTTP handling in PHP applications.

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 need standardized HTTP message interfaces for
 handling HTTP requests and responses in web-based components.

 The php-psr-http-message package is essential for:
 - Providing standardized HTTP message interfaces for FOSSology components
 - Ensuring interoperability with PSR-7 compliant HTTP libraries
 - Supporting web-based tools in FOSSology that handle HTTP requests
 - Maintaining compatibility with modern PHP HTTP standards
 - Enabling consistent HTTP message handling across different
implementations
 - Supporting the PSR-7 specification for HTTP message interfaces

Technical Details:
 - Requires PHP >= 5.3.0
 - Implements PSR-7 HTTP Message Interface specification
 - Uses PSR-4 autoloading
 - Provides interfaces for all PSR-7 message types
 - MIT licensed for maximum compatibility
 - Part of the PHP-FIG standards recommendations
 - Foundation for PSR-17 HTTP Factory interfaces

Dependencies:
 - php (>= 5.3.0)
 - Build dependencies: phpunit, php-codesniffer

The package will be maintained by Ahmed Gamal <ahmed.gamal9541@gmail.com>
as part
of the FOSSology packaging effort.

#1109625#12
Date:
2025-08-10 13:45:06 UTC
From:
To:
Please do some research before opening ITP/RFP bugs.
This package already exists in Debian.

#1109625#17
Date:
2025-08-10 22:15:49 UTC
From:
To:
Dear William,

I need to clarify the version-specific requirement underlying this ITP
filing.

VERSION DEPENDENCY CHAIN:
FOSSology requires php-psr-http-message version 1.0.1, which is part of
maintaining compatibility across its entire HTTP dependency stack with Slim
Framework 3.x and related components.

DEPENDENCY CHAIN COMPATIBILITY:
The core issue is preserving FOSSology's integrated HTTP stack:
- FOSSology uses Slim Framework 3.12.3
- Slim 3.x was built against PSR-HTTP-Message 1.0.1 interfaces
- FOSSology's HTTP handling components expect PSR-7 1.0.1 behavior
- Newer PSR-HTTP-Message versions may have subtle interface changes
incompatible with Slim 3.x

TECHNICAL INTEGRATION REQUIREMENTS:
FOSSology's web components rely on:
- Specific PSR-7 message interface implementations from 1.0.1
- HTTP request/response handling patterns compatible with Slim 3.x
- Integration with FOSSology's existing HTTP processing code
- Consistency across the PSR-7/PSR-17 interface chain

EVIDENCE FROM TESTING:
FOSSology's composer dependencies specifically lock PSR-HTTP-Message to
1.0.1 because:
- It ensures compatibility with Slim 3.x HTTP handling
- Prevents interface mismatches in the HTTP message chain
- Maintains stability in FOSSology's web API components

REAL-WORLD DEPENDENCY REQUIREMENT:
This version constraint is essential for:
- Slim 3.x route handling and middleware processing
- FOSSology's HTTP request/response pipeline
- Web API functionality and HTTP message creation
- Integration between PSR-7 interfaces and Slim 3.x framework

PROPOSED SOLUTION:
Package as php-psr-http-message-1.0 to provide the version FOSSology's HTTP
stack requires, following Debian's approach for version-specific
dependencies.

JUSTIFICATION:
This maintains the complete FOSSology HTTP infrastructure (Slim 3.x +
PSR-HTTP-Message 1.0.1) without forcing architectural changes that would
require extensive upstream development.

REQUEST:
Could we reopen this ITP to discuss providing PSR-HTTP-Message 1.0.1 for
FOSSology's dependency chain compatibility?

Best regards,
Ahmed Gamal
FOSSology Debian Packaging Team

Technical reference: https://www.php-fig.org/psr/psr-7/

#1109625#22
Date:
2025-08-10 22:18:30 UTC
From:
To:
Dear William,

I need to reopen this ITP due to HTTP dependency chain compatibility
requirements for FOSSology's web infrastructure.

DEPENDENCY CHAIN REQUIREMENT:
FOSSology requires PSR-HTTP-Message 1.0.1 as part of maintaining
compatibility with Slim Framework 3.12.3 and its complete HTTP stack.

TECHNICAL INTEGRATION:
- FOSSology uses Slim Framework 3.12.3 for web components
- Slim 3.x was built against PSR-HTTP-Message 1.0.1 interfaces
- FOSSology's HTTP handling depends on this specific version chain
- Newer PSR-HTTP-Message versions may break Slim 3.x integration

HTTP STACK COMPATIBILITY:
The entire FOSSology web infrastructure requires consistent PSR versions:
- Slim 3.12.3 (web framework)
- PSR-HTTP-Message 1.0.1 (HTTP interfaces)
- PSR-HTTP-Factory 1.0.1 (HTTP factories)
- All must work together for FOSSology's web/API components

EVIDENCE FROM TESTING:
FOSSology's composer dependencies lock PSR-HTTP-Message to 1.0.1 to ensure:
- Compatibility with Slim 3.x HTTP message handling
- Stability in web API and routing components
- Proper integration across the HTTP interface chain

PROPOSED SOLUTION:
Package as php-psr-http-message-1.0 to support FOSSology's HTTP dependency
requirements alongside current Debian versions.

JUSTIFICATION:
This maintains FOSSology's complete HTTP infrastructure without forcing
architectural changes that would require extensive upstream development.

REQUEST:
Please reopen to discuss providing PSR-HTTP-Message 1.0.1 for FOSSology's
integrated HTTP stack compatibility.

Best regards,
Ahmed Gamal
FOSSology Debian Packaging Team