Closed ericfortmeyer closed 1 year ago
I disagree: the emitter is possibly the most important functionality of this package, which doesn't drag in any more dependencies than what is necessary for it to work.
Implementing the interface from this package is very much the correct way forward, IMO.
Closing here meanwhile: the EmitterInterface
is effectively the center of this package, and splitting this package further doesn't bring any advantage, as further splitting is just dilution, given there are no transitive dependencies dragged in from here.
RFC
Goal
Allow users to use implementations of
EmitterInterface
without requiringlaminas-httphandlerrunner
be installed.Background,
EmitterInterface
for different use cases.EmitterInterface
could be created that do not require all oflaminas-httphandlerrunner
.Note: There are several forks of
laminas-httphandlerrunner
(See non-exhaustive list) some of which contain only a copy ofEmitterInterface
Considerations
Users will have to implement the interface from PHP Contrib instead of
[laminas/laminas-httphandlerrunner](https://github.com/laminas/laminas-httphandlerrunner/)
. Since the interface will not change, users will only need tocomposer require php-contrib/http-emitter
orcomposer require laminas/http-emitter
, then update the use statements in their projects.Proposal(s)
I am proposing that
EmitterInterface
be moved either to PHP Contrib or to a separate project inlaminas
.Appendix
List of Copies of EmitterInterface