Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Discovery Laravel Package

php-http/discovery

Auto-discovery for HTTP clients and factories: finds PSR-18 clients and PSR-17/PSR-7 implementations at runtime, so libraries can depend on interfaces without forcing a specific vendor. Includes a Composer plugin for optional auto-installation.

View on GitHub
Deep Wiki
Context7
1.20.0
  • #268 - Do not attempt to update lock file when it is not existing.
  • #267 - Test with PHP 8.3 and 8.4
  • #266 - If wrapped client implements factories, use those instead of discovering new factories.
1.19.4
  • #264 - Do not report a general conflict with sebastian/comparator but make sure we install the correct version for our tests.
1.19.3
  • #261 - explicitly mark nullable parameters as nullable (avoid deprecation in PHP 8.4)
1.19.2
  • #253 - Symfony 7 dropped the deprecated PHP-HTTP HttpClient interface from their HTTP client, do not discover the version 7 client when lookig for the old interface.
1.19.1
  • #250 - Fix: Buzz client instantiation using deprecated Message Factory Discovery, use PSR-17 factory discovery instead.
1.19.0
  • #249 - Have composer plugin correctly install Symfony http client when nothing explicitly requires psr 18 resp. httplug.
  • #241 - Support discovering PSR-17 factories of httpsoft/http-message package
1.18.1
  • #242 - Better exception message when no legacy php-http message factories can be built. Also needs php-http/message-factory package and they are deprecated in favor of PSR-17 anyways.
1.18.0
  • #235 - Deprecate HttpClientDiscovery, use Psr18ClientDiscovery instead
  • #238 - Skip requiring php-http/message-factory when installing symfony/http-client 6.3+
  • #239 - Skip auto-installing when the root package's extra.discovery is enough
1.17.0
  • #230 - Add Psr18Client to make it straightforward to use PSR-18
  • #232 - Allow pinning the preferred implementations in composer.json
  • #233 - Fix Psr17Factory::createServerRequestFromGlobals() when uploaded files have been moved
1.16.0
1.15.3
  • #224 - Fix regression with Magento classloader
1.15.2
  • #219 - Fix handling of replaced packages
1.15.1
  • #214 - Fix resolving deps for psr/http-message-implementation
  • #216 - Fix keeping platform requirements when rebooting composer
  • #217 - Set extra.plugin-optional composer flag
1.15.0
  • #209 - Add generic Psr17Factory class
  • #208 - Add composer plugin to auto-install missing implementations. When libraries require an http implementation but no packages providing that implementation is installed in the application, the plugin will automatically install one. This is only done for libraries that directly require php-http/discovery to avoid unexpected dependency installation.
1.14.3
  • #207 - Updates Exception to extend Throwable solving static analysis errors for consumers
1.14.2
  • #202 - Avoid error when the Symfony PSR-18 client exists but its dependencies are not installed
1.14.1
  • #199 - Fixes message factory discovery for laminas-diactoros ^2.7
1.14.0
1.13.0
1.12.0
1.11.0
1.10.0
  • Discover PSR-18 implementation of phalcon
1.9.1

Fixed

  • Support PHP 7.4 and 8.0
1.9.0

Added

  • Support discovering PSR-18 factories of guzzlehttp/guzzle 7+
1.8.0

Added

  • Support discovering PSR-17 factories of guzzlehttp/psr7 package
  • Support discovering PSR-17 factories of laminas/laminas-diactoros package
  • ClassDiscovery::getStrategies() to retrieve the list of current strategies.

Fixed

  • Ignore exception during discovery when Symfony HttplugClient checks if HTTPlug is available.
1.7.4

See change log for changes.

1.7.3

Fixed

  • Enough conditions to only use Symfony HTTP client if all needed components are available.
1.7.2

Fixed

  • Allow a condition to specify an interface and not just classes.
1.7.1

See change log for changes.

1.7.0

See change log for changes.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
davejamesmiller/laravel-breadcrumbs
artisanry/parsedown
christhompsontldr/phpsdk
enqueue/dsn
bunny/bunny
enqueue/test
enqueue/null
enqueue/amqp-tools
milesj/emojibase
bower-asset/punycode
bower-asset/inputmask
bower-asset/jquery
bower-asset/yii2-pjax
laravel/nova
spatie/laravel-mailcoach
spatie/laravel-superseeder
laravel/liferaft
nst/json-test-suite
danielmiessler/sec-lists
jackalope/jackalope-transport