chef-zero
chef-zero copied to clipboard
Update rack requirement from ~> 2.0, >= 2.0.6 to >= 2.0.6, < 4
Updates the requirements on rack to permit the latest version.
Changelog
Sourced from rack's changelog.
[3.0.0] - 2022-09-06
- No changes
[3.0.0.rc1] - 2022-09-04
SPEC Changes
- Stream argument must implement
<<rack/rack#1959closemay be called onrack.inputrack/rack#1956rack.response_finishedmay be used for executing code after the response has been finished rack/rack#1952[3.0.0.beta1] - 2022-08-08
Security
- Do not use semicolon as GET parameter separator. (#1733, [
@jeremyevans])SPEC Changes
- Response array must now be non-frozen.
- Response
statusmust now be an integer greater than or equal to 100.- Response
headersmust now be an unfrozen hash.- Response header keys can no longer include uppercase characters.
- Response header values can be an
Arrayto handle multiple values (and no longer supports\nencoded headers).- Response body can now respond to
#call(streaming body) instead of#each(enumerable body), for the equivalent of response hijacking in previous versions.- Middleware must no longer call
#eachon the body, but they can call#to_aryon the body if it responds to#to_ary.rack.inputis no longer required to be rewindable.rack.multithread/rack.multiprocess/rack.run_once/rack.versionare no longer required environment keys.SERVER_PROTOCOLis now a required environment key, matching the HTTP protocol used in the request.rack.hijack?(partial hijack) andrack.hijack(full hijack) are now independently optional.rack.hijack_iohas been removed completely.rack.response_finishedis an optional environment key which contains an array of callable objects that must accept#call(env, status, headers, error)and are invoked after the response is finished (either successfully or unsucessfully).- It is okay to call
#closeonrack.inputto indicate that you no longer need or care about the input.- The stream argument supplied to the streaming body and hijack must support
#<<for writing output.Removed
- Remove
rack.multithread/rack.multiprocess/rack.run_once. These variables generally come too late to be useful. (#1720, [@ioquatix], [@jeremyevans]))- Remove deprecated Rack::Request::SCHEME_WHITELIST. ([
@jeremyevans])- Remove internal cookie deletion using pattern matching, there are very few practical cases where it would be useful and browsers handle it correctly without us doing anything special. (#1844, [
@ioquatix])- Remove
rack.versionas it comes too late to be useful. (#1938, [@ioquatix])- Extract
rackupcommand,Rack::Server,Rack::Handlerand related code into a separate gem. (#1937, [@ioquatix])Added
Rack::Headersadded to support lower-case header keys. ([@jeremyevans])Rack::Utils#set_cookie_headernow supportsescape_key: falseto avoid key escaping. ([@jeremyevans])Rack::RewindableInputsupports size. (@ahorek)Rack::RewindableInput::Middlewareadded for makingrack.inputrewindable. ([@jeremyevans])
... (truncated)
Commits
52901cabump version, update changeloge58e2ebFix unclosed strings inUPGRADE-GUIDE.md(#1960)12742a0bump version, update changelog6aad539The stream argument must implement#<<. (#1959)ffee3c5Allow calling close onrack.input. (#1956)6fc4a32Make MockResponse#body work if body.each reuses strings for performance1a9b98dFor some reason, the recently released version breaks Ruby v2.5.856c4f9Addrack.response_finishedtoRack::Lint. (#1952)1a37044Refactor tests. (#1953)293b8e7Do not add lib to load path when running separate tests- Additional commits viewable in compare view
You can trigger a rebase of this PR by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
-
@dependabot rebasewill rebase this PR -
@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it -
@dependabot mergewill merge this PR after your CI passes on it -
@dependabot squash and mergewill squash and merge this PR after your CI passes on it -
@dependabot cancel mergewill cancel a previously requested merge and block automerging -
@dependabot reopenwill reopen this PR if it is closed -
@dependabot closewill close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually -
@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) -
@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) -
@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Note Automatic rebases have been disabled on this pull request as it has been open for over 30 days.







