Update dependency amphp/http-server to v3#1896
Open
renovate[bot] wants to merge 1 commit intomasterfrom
Open
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
^2.1→^3.0Release Notes
amphp/http-server (amphp/http-server)
v3.4.4: 3.4.4Compare Source
What's Changed
Fixed "MadeYouReset" HTTP/2 DoS attack vector described by CVE-2025-8671 and https://kb.cert.org/vuls/id/767506.
Stream reset protection has been refactored to account for the number of reset streams within a sliding time window. Note that your application must expose HTTP/2 connections directly to be affected by this vulnerability. Servers behind a proxy using HTTP/1.x such as nginx are not affected.
Full Changelog: amphp/http-server@v3.4.3...v3.4.4
v3.4.3: 3.4.3Compare Source
What's Changed
New Contributors
Full Changelog: amphp/http-server@v3.4.2...v3.4.3
v3.4.2: 3.4.2Compare Source
What's Changed
New Contributors
Full Changelog: amphp/http-server@v3.4.1...v3.4.2
v3.4.1: 3.4.1Compare Source
What's Changed
league/uri, dropping support forleague/uri@6.xFull Changelog: amphp/http-server@v3.4.0...v3.4.1
v3.4.0: 3.4.0Compare Source
What's Changed
ExceptionHandlerinterface and middleware by @trowski in #375_to host validation by @maximal in #372New Contributors
Full Changelog: amphp/http-server@v3.3.1...v3.4.0
v3.3.1: 3.3.1Compare Source
What's Changed
New Contributors
Full Changelog: amphp/http-server@v3.3.0...v3.3.1
v3.3.0: 3.3.0Compare Source
What's Changed
RequestBodynow implementsStringableso the entire request body can be buffered by simply casting the object to a string (note the request body length limits still apply).ClientExceptionnow extendsAmp\ByteStream\StreamExceptionto avoid violating theReadableStreaminterface by throwing a non-StreamExceptionfrom a stream method.New Contributors
Full Changelog: amphp/http-server@v3.2.0...v3.3.0
v3.2.0: 3.2.0Compare Source
league/uri@v7.1andpsr/message@v2HttpErrorExceptionconstructorFull Changelog: amphp/http-server@v3.1.0...v3.2.0
v3.1.0: 3.1.0Compare Source
What's Changed
HttpErrorExceptionby @kelunik in #352Full Changelog: amphp/http-server@v3.0.0...v3.1.0
v3.0.0: 3.0.0Compare Source
Stable release compatible with AMPHP v3 and fibers! 🎉
As with other libraries compatible with AMPHP v3, most cases of parameters or returns of
Promise<ResolutionType>have been replaced withResolutionType.The
RequestHandlerandMiddlewareinterfaces along with theRequestandResponseobjects are largely unchanged with the exception of replacingPromiseobjects with the resolution type.RequestHandler::handleRequest()andMiddleware::handleRequest()has changed fromPromise<Response>toResponse.ReadableStreamor a string (note the interface name change inamphp/byte-stream).nullwill no longer be cast to an empty body.Creating an HTTP Server
Initializing a server has changed significantly.
The
Optionsobject has been removed, replaced by constructor parameters on various components. PHP 8.0's named parameters allows only defining the parameters you wish to override without the need to define those you do not wish to change.HttpServeris now an interface.ServerObserverhas been removed and replaced withonStart()andonStop()methods on theHttpServerinterface.SocketHttpServeris the provided default implementation ofHttpServer. The methodsgetLogger(),getRequestHandler(), andgetErrorHandler()are no longer part ofHttpServerto avoid the interface being used as a service-locator.In addition to the constructor,
SocketHttpServerprovides two convenience static constructors for common use-cases.createForDirectAccess()— Creates an instance appropriate for direct access by the publiccreateForBehindProxy()— Creates an instance appropriate for use when behind a proxy service such as nginx'Listening interfaces are provided to
SocketHttpServerusing theexpose()method. TheRequestHandlerandErrorHandlerinstances are not provided to the constructor, instead being provided to theSocketHttpServer::start()method. As these objects are provided after constructing theHttpServerinstance,RequestHandlersmay now require an instance ofHttpServerin their constructors to attach start and stop handlers.SocketServerinstances are then created bySocketHttpServerusing an instance ofSocketServerFactorypassed to the constructor. This allows server bind contexts to be initialized based on the provided (or default)HttpDriverFactory.Below is the "Hello, World!" example from examples/hello-world.php as an example of initializing a
SocketHttpServerinstance.New Middlewares
ConcurrencyLimitingMiddlewareto limit the number of requests which may be concurrently handled by the server.ForwardedMiddlewareand associatedForwardedclass andForwardedHeaderTypeenum. This middleware parses eitherForwardedorX-Forwarded-Forheaders to determine the original client address when used behind a proxy supporting these headers.AllowedMethodsMiddlewarewhich limits the allowed HTTP verbs used by requests. This middleware is used automatically bySocketHttpServer. The allowed methods can be specified through a constructor parameter, using null to disable the middleware.HTTP Drivers
Generally consumers of this library need not worry about these changes unless they implemented their own HTTP driver or interacted with the
Clientinterface beyond grabbing client metadata.Clientis a significantly thinner interface, consisting of only metadata about the client connection.HttpDriverinstances now handle responding to requests instead of theClientobject.HttpDriver::setup()has been replaced withHttpDriver::handleClient. Rather than returning a Generator parser which is fed data read from the client, this method is instead expected to read/write data from the provided streams itself.HttpDriver::write()has been removed, as writing to the client should be handled internally within the driver.Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.