chore(deps): update dependency hono to v4#43
Open
renovate[bot] wants to merge 1 commit into
Open
Conversation
f997c2e to
c730140
Compare
c730140 to
35258d1
Compare
|
Important Review skippedBot user detected. To trigger a single review, invoke the You can disable this status message by setting the
Comment |
398703a to
6010bf0
Compare
b7485f6 to
eee0a9e
Compare
b85be43 to
e76f4fb
Compare
e76f4fb to
2e35c93
Compare
271d6c0 to
8e92841
Compare
7f12ef4 to
ace1bda
Compare
ace1bda to
a234216
Compare
8bd32ac to
e98d1f4
Compare
d4d9b8b to
8a66df7
Compare
ea59e08 to
261bfa1
Compare
261bfa1 to
28fe864
Compare
28fe864 to
3074550
Compare
2bdc2f2 to
9b610b7
Compare
ba86efa to
dbff9d2
Compare
1b18d76 to
d678bd2
Compare
d678bd2 to
dd3e4c1
Compare
49ac514 to
3522ff1
Compare
0e950e4 to
175dca0
Compare
a3b7dc0 to
11334c6
Compare
11334c6 to
bb20e99
Compare
bb20e99 to
eaf5e73
Compare
4a6f0a1 to
880b6ec
Compare
880b6ec to
3e60e36
Compare
b78f047 to
35c02b6
Compare
0e4bf57 to
87b5fb6
Compare
4593023 to
6732681
Compare
6732681 to
6b3cce7
Compare
6b3cce7 to
b87c439
Compare
b87c439 to
8a5d4eb
Compare
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:
^3.12.12→^4.0.0Release Notes
honojs/hono (hono)
v4.12.26Compare Source
What's Changed
Full Changelog: honojs/hono@v4.12.25...v4.12.26
v4.12.25Compare Source
Security fixes
This release includes fixes for the following security issues:
CORS Middleware reflects any Origin with credentials when
origindefaults to the wildcardAffects:
hono/cors. Fixes the wildcard origin reflecting the requestOriginand sendingAccess-Control-Allow-Credentials: truewhencredentials: trueis set without an explicitorigin, where any site a logged-in user visited could make credentialed cross-origin requests and read responses from cookie-authenticated endpoints. GHSA-88fw-hqm2-52qcBody Limit Middleware can be bypassed on AWS Lambda by understating
Content-LengthAffects:
hono/body-limiton AWS Lambda (hono/aws-lambda,hono/lambda-edge). Fixes the request being built with the client-declaredContent-Lengthwhile the body is delivered fully buffered, where a client could declare a smallContent-Lengthwith a much larger body and slip past the configured size limit. GHSA-rv63-4mwf-qqc2Path traversal in
serve-staticon Windows via encoded backslash (%5C)Affects:
serveStaticon Windows (Node, Bun, Deno adapters). Fixes the path guard allowing a lone backslash, where an encoded backslash (%5C) decoded to\was treated as a separator by the Windows path resolver, letting a single URL segment escape into a middleware-guarded subtree. GHSA-wwfh-h76j-fc44AWS Lambda adapter merges multiple
Set-Cookieheaders into one value, dropping cookies on ALB single-header and LatticeAffects:
hono/aws-lambda. Fixes multipleSet-Cookieresponse headers being joined into one comma-separated value for ALB single-header responses and VPC Lattice v2, where the value could not be split back into individual cookies and clients silently dropped or misparsed them. GHSA-j6c9-x7qj-28xfLambda@Edge adapter keeps only the last value of a repeated request header, dropping the rest
Affects:
hono/lambda-edge. Fixes repeated request headers being written with overwrite instead of append, where only the last value of a header such asX-Forwarded-Forreached the application and the remaining values were silently dropped. GHSA-wgpf-jwqj-8h8pv4.12.24Compare Source
What's Changed
Full Changelog: honojs/hono@v4.12.23...v4.12.24
v4.12.23Compare Source
What's Changed
COMPRESSIBLE_CONTENT_TYPE_REGEXre-export by @na-trium-144 in #4961::by @yusukebe in #4971Full Changelog: honojs/hono@v4.12.22...v4.12.23
v4.12.22Compare Source
What's Changed
New Contributors
Full Changelog: honojs/hono@v4.12.21...v4.12.22
v4.12.21Compare Source
Security fixes
This release includes fixes for the following security issues:
app.mount() strips mount prefix using undecoded path, causing incorrect routing for percent-encoded paths
Affects:
app.mount(). Fixes prefix stripping using the raw URL pathname instead of the decoded path, where percent-encoded characters in the mount prefix or path could cause the prefix to be removed at the wrong position, resulting in the sub-application receiving an incorrect path. GHSA-2gcr-mfcq-wcc3IP Restriction bypasses static deny rules for non-canonical IPv6
Affects:
hono/ip-restriction. Fixes IP address comparison using string equality, where non-canonical IPv6 representations of a denied address — such as compressed forms or hex-notation IPv4-mapped addresses — could bypass static deny rules. GHSA-xrhx-7g5j-rcj5Cookie helper does not sanitize sameSite and priority, allowing Set-Cookie injection
Affects:
hono/cookie. Fixes missing validation ofsameSiteandpriorityoptions against injection characters (;,\r,\n), where user-controlled input passed to either option could inject additional attributes into the Set-Cookie response header. GHSA-3hrh-pfw6-9m5xJWT middleware accepts any Authorization scheme, not only Bearer
Affects:
hono/jwt,hono/jwk. Fixes missing scheme validation in the Authorization header, where any two-part header value was accepted regardless of the scheme name, allowing non-Bearer schemes to pass JWT authentication. GHSA-f577-qrjj-4474Users who use
app.mount(),hono/ip-restriction,hono/cookie, orhono/jwt/hono/jwkare encouraged to upgrade to this version.v4.12.20Compare Source
What's Changed
New Contributors
Full Changelog: honojs/hono@v4.12.19...v4.12.20
v4.12.19Compare Source
What's Changed
bytes()by @yusukebe in #4921@hono/node-serverto v2 and fix abort handling by @yusukebe in #4940New Contributors
Full Changelog: honojs/hono@v4.12.18...v4.12.19
v4.12.18Compare Source
Security fixes
This release includes fixes for the following security issues:
Cache Middleware ignores Vary: Authorization / Vary: Cookie leading to cross-user cache leakage
Affects: Cache Middleware. Fixes missing cache-skip handling for
Vary: AuthorizationandVary: Cookie, where a response cached for one authenticated user could be served to other users. GHSA-p77w-8qqv-26rmCSS Declaration Injection via Style Object Values in JSX SSR
Affects: hono/jsx. Fixes a missing CSS-context escape for
styleobject values and property names, where untrusted input could inject additional CSS declarations. The impact is limited to CSS and does not allow JavaScript execution. GHSA-qp7p-654g-cw7pImproper validation of NumericDate claims (exp, nbf, iat) in JWT verify()
Affects:
hono/utils/jwt. Fixes improper validation ofexp,nbf, andiatclaims, where falsy, non-finite, or non-numeric values could silently bypass time-based checks instead of being rejected per RFC 7519. GHSA-hm8q-7f3q-5f36Users who use the JWT helper, hono/jsx, or the Cache middleware are strongly encouraged to upgrade to this version.
v4.12.17Compare Source
What's Changed
atom+xmlandrss+xmltodefaultExtensionMapby @yuintei in #4899New Contributors
Full Changelog: honojs/hono@v4.12.16...v4.12.17
v4.12.16Compare Source
Security fixes
This release includes fixes for the following security issues:
Unvalidated JSX Tag Names in hono/jsx May Allow HTML Injection
Affects: hono/jsx. Fixes missing validation of JSX tag names when using
jsx()orcreateElement(), which could allow HTML injection if untrusted input is used as the tag name. GHSA-69xw-7hcm-h432bodyLimit() can be bypassed for chunked / unknown-length requests
Affects: Body Limit Middleware. Fixes late enforcement for request bodies without a reliable Content-Length (e.g. chunked requests), where oversized requests could reach handlers and return successful responses before being rejected. GHSA-9vqf-7f2p-gf9v
v4.12.15Compare Source
What's Changed
New Contributors
Full Changelog: honojs/hono@v4.12.14...v4.12.15
v4.12.14Compare Source
Security fixes
This release includes fixes for the following security issues:
Improper handling of JSX attribute names in hono/jsx SSR
Affects: hono/jsx. Fixes missing validation of JSX attribute names during server-side rendering, which could allow malformed attribute keys to corrupt the generated HTML output and inject unintended attributes or elements. GHSA-458j-xx4x-4375
Other changes
fa2c74fv4.12.13Compare Source
What's Changed
skipoption by @yusukebe in #4862onCacheNotAvailableoption by @yusukebe in #4876New Contributors
Full Changelog: honojs/hono@v4.12.12...v4.12.13
v4.12.12Compare Source
Security fixes
This release includes fixes for the following security issues:
Middleware bypass via repeated slashes in serveStatic
Affects: Serve Static middleware. Fixes a path normalization inconsistency where repeated slashes (
//) could bypass route-based middleware protections and allow access to protected static files. GHSA-wmmm-f939-6g9cPath traversal in toSSG() allows writing files outside the output directory
Affects:
toSSG()for Static Site Generation. Fixes a path traversal issue where craftedssgParamsvalues could write files outside the configured output directory. GHSA-xf4j-xp2r-rqqxIncorrect IP matching in ipRestriction() for IPv4-mapped IPv6 addresses
Affects: IP Restriction Middleware. Fixes improper handling of IPv4-mapped IPv6 addresses (e.g.
::ffff:127.0.0.1) that could cause allow/deny rules to be bypassed. GHSA-xpcf-pg52-r92gMissing validation of cookie name on write path in setCookie()
Affects:
setCookie(),serialize(), andserializeSigned()fromhono/cookie. Fixes missing validation of cookie names on the write path, preventing inconsistent handling between parsing and serialization. GHSA-26pp-8wgv-hjvmNon-breaking space prefix bypass in cookie name handling in getCookie()
Affects:
getCookie()fromhono/cookie. Fixes a discrepancy in cookie name handling that could allow attacker-controlled cookies to override legitimate ones and bypass prefix protections. GHSA-r5rp-j6wh-rvv4Users who use Serve Static, Static Site Generation, Cookie utilities, or IP restriction middleware are strongly encouraged to upgrade to this version.
v4.12.11Compare Source
What's Changed
New Contributors
Full Changelog: honojs/hono@v4.12.10...v4.12.11
v4.12.10Compare Source
What's Changed
Simple capturing grouptest by @yusukebe in #4838New Contributors
Full Changelog: honojs/hono@v4.12.9...v4.12.10
v4.12.9Compare Source
What's Changed
parseBodyfrom bodyCache to prevent TypeError by @yusukebe in #4807PickResponseByStatusCodetype by @yusukebe in #4791fire()fallback behavior consistent withhandle()by @yusukebe in #4821New Contributors
Full Changelog: honojs/hono@v4.12.8...v4.12.9
v4.12.8Compare Source
What's Changed
New Contributors
Full Changelog: honojs/hono@v4.12.7...v4.12.8
v4.12.7Compare Source
Security hardening
Ignore
__proto__path segments in parseBody({ dot: true }) to prevent potential prototype pollution when merged with unsafe patterns.Full Changelog: honojs/hono@v4.12.6...v4.12.7
v4.12.6Compare Source
What's Changed
tsconfig.spec.jsonby @yusukebe in #4798New Contributors
Full Changelog: honojs/hono@v4.12.5...v4.12.6
v4.12.5Compare Source
What's Changed
string | undefinedfrom param() when path type is any by @andrewdamelio in #4723@hono/eslint-configby @BarryThePenguin in #4781New Contributors
Full Changelog: honojs/hono@v4.12.4...v4.12.5
v4.12.4Compare Source
Security fixes
This release includes fixes for the following security issues:
SSE Control Field Injection
Affects:
streamSSE()in Streaming Helper. Fixes injection of unintended SSE fields by rejecting CR/LF characters inevent,id, andretry. GHSA-p6xx-57qc-3wxrCookie Attribute Injection in
setCookie()Affects:
setCookie()fromhono/cookie. Fixes cookie attribute manipulation by rejecting;,\r, and\nindomainandpathoptions. GHSA-5pq2-9x2x-5p6wMiddleware Bypass in Serve Static
Affects: Serve Static middleware. Fixes inconsistent URL decoding that could allow protected static resources to be accessed without triggering route-based middleware. GHSA-q5qw-h33p-qvwr
Users who uses Strreaming Helper, Cookie utility, and Serve Static are strongly encouraged to upgrade to this version.
Other changes
tryDecodeURIby @yusukebe in #4779New Contributors
Full Changelog: honojs/hono@v4.12.3...v4.12.4
v4.12.3Compare Source
What's Changed
Math.floorinstead of bitwise OR for safe timestamp by @EdamAme-x in #4754JwtVariablesforContextVariableMapby @yusukebe in #4764New Contributors
Full Changelog: honojs/hono@v4.12.2...v4.12.3
v4.12.2Compare Source
Security fix
Fixed incorrect handling of
X-Forwarded-Forin the AWS Lambda adapter behind ALB that could allow IP-based access control bypass. The detail: GHSA-xh87-mx6m-69f3Thanks @EdamAme-x
What's Changed
Full Changelog: honojs/hono@v4.12.1...v4.12.2
v4.12.1Compare Source
What's Changed
ApplyGlobalResponsefromhono/clientby @sushichan044 in #4743Full Changelog: honojs/hono@v4.12.0...v4.12.1
v4.12.0Compare Source
Release Notes
Hono v4.12.0 is now available!
This release includes new features for the Hono client, middleware improvements, adapter enhancements, and significant performance improvements to the router and context.
$pathfor Hono ClientThe Hono client now has a
$path()method that returns the path string instead of a full URL. This is useful when you need just the path portion for routing or key-based operations:Unlike
$url()which returns aURLobject,$path()returns a plain path string, making it convenient for use with routers or as cache keys.Thanks @ShaMan123!
ApplyGlobalResponseType Helper for RPC ClientThe new
ApplyGlobalResponsetype helper allows you to add global error response types to all routes in the RPC client. This is useful for typing common error responses fromapp.onError()or global middlewares:Thanks @mohankumarelec!
SSG Redirect Plugin
A new
redirectPluginfor SSG generates static HTML redirect pages for HTTP redirect responses (301, 302, 303, 307, 308):The generated redirect pages include a
<meta http-equiv="refresh">tag, a canonical link, and arobots noindexmeta tag.Thanks @3w36zj6!
onAuthSuccessCallback for Basic AuthThe Basic Auth middleware now supports an
onAuthSuccesscallback that is invoked after successful authentication. This allows you to set context variables or perform logging without re-parsing the Authorization header:The callback also works with async functions and the
verifyUsermode.Thanks @AprilNEA!
getConnInfofor AWS Lambda, Cloudflare Pages, and NetlifygetConnInfo()is now available for three additional adapters:Thanks @rokasta12!
alwaysRedirectOption for Trailing Slash MiddlewareThe trailing slash middleware now supports an
alwaysRedirectoption. When enabled, the middleware redirects before executing handlers, which fixes the issue where trailing slash handling doesn't work with wildcard routes:Progressive Locale Code Truncation
The
normalizeLanguagefunction in the language middleware now supports RFC 4647 Lookup-based progressive truncation. Locale codes likeja-JPwill matchjawhen only the base language is insupportedLanguages:Thanks @sorafujitani!
exportsField forExecutionContextThe
ExecutionContexttype now includes anexportsproperty for Cloudflare Workers. You can use module augmentation to type it with Wrangler's generated types:Thanks @toreis-up!
Performance Improvements
TrieRouter 1.5x ~ 2.0x Faster
The TrieRouter has been significantly optimized with reduced spread syntax usage, O(1)
hasChildrenchecks, lazy regular expression generation, and removal of redundant processes:GET /userGET /user/lookup/username/heyGET /static/index.htmlThanks @EdamAme-x!
Fast Path for
c.json()c.json()now has the same fast path optimization asc.text(). When no custom status, headers, or finalized state exists, the Response is created directly without allocating aHeadersobject:Benchmark results:
Thanks @mgcrea!
New features
ApplyGlobalResponsetype helper for RPC Client #4556alwaysRedirectoption to support wildcard routes #4658Performance
createResponseInstancefor new Response #4733All changes
ApplyGlobalResponsetype helper for RPC Client by @mohankumarelec in #4556alwaysRedirectoption to support wildcard routes by @yusukebe in #4658createResponseInstancefor new Response by @yusukebe in #4733New Contributors
Full Changelog: honojs/hono@v4.11.10...v4.12.0
v4.11.10Compare Source
What's Changed
91def7c)Full Changelog: honojs/hono@v4.11.9...v4.11.10
v4.11.9Compare Source
What's Changed
node.vC[0]instead of referring tonode.pPby @usualoma in #4663Full Changelog: honojs/hono@v4.11.8...v4.11.9
v4.11.8Compare Source
What's Changed
New Contributors
Full Changelog: honojs/hono@v4.11.7...v4.11.8
v4.11.7Compare Source
Security Release
This release includes security fixes for multiple vulnerabilities in Hono and related middleware. We recommend upgrading if you are using any of the affected components.
Components
IP Restriction Middleware
Fixed an IPv4 address validation bypass that could allow IP-based access control to be bypassed under certain configurations.
Cache Middleware
Fixed an issue where responses marked with
Cache-Control: privateorno-storecould be cached, potentially leading to information disclosure on some runtimes.Serve Static Middleware (Cloudflare Workers adapter)
Fixed an issue that could allow unintended access to internal asset keys when serving static files with user-controlled paths.
hono/jsx
ErrorBoundaryFixed a reflected Cross-Site Scripting (XSS) issue in the
ErrorBoundarycomponent that could occur when untrusted strings were rendered without proper escaping.Recommendation
Users are encouraged to upgrade to this release, especially if they:
ErrorBoundarycomponentsSecurity Advisories & CVEs
IP Restriction Middleware – IPv4 address validation bypass
Cache Middleware ignores
Cache-Control: privateServe Static Middleware (Cloudflare Workers adapter) – Arbitrary key read
hono/jsx
ErrorBoundary– Cross-Site Scripting (XSS)Full Changelog: honojs/hono@v4.11.6...v4.11.7
v4.11.6Compare Source
What's Changed
unique symbolfor more accurate typing. by @usualoma in #4651\rand\r\nline endings in writeSSE by @AprilNEA in #4644New Contributors
Full Changelog: honojs/hono@v4.11.5...v4.11.6
v4.11.5Compare Source
What's Changed
AlgorithmTypesby @yusukebe in #4642New Contributors
Full Changelog: honojs/hono@v4.11.4...v4.11.5
v4.11.4Compare Source
Security
Fixed a JWT algorithm confusion issue in the JWT and JWK/JWKS middleware.
Both middlewares now require an explicit algorithm configuration to prevent the verification algorithm from being influenced by untrusted JWT header values.
If you are using the JWT or JWK/JWKS middleware, please update to the latest version as soon as possible.
JWT middleware
JWK/JWKS middleware
For more details, see the Security Advisory.
What's Changed
@hono/eslint-configand enable curly rule by @yusukebe in #4620algoption for JWT middleware by @yusukebe in #4624New Contributors
Full Changelog: honojs/hono@v4.11.3...v4.11.4
v4.11.3Compare Source
What's Changed
Full Changelog: honojs/hono@v4.11.2...v4.11.3
v4.11.2Compare Source
What's Changed
HonoURLtypes by @yusukebe in #4592SimplifyinToSchemaby @yusukebe in #4597MergeMiddlewareResponsetype by @yusukebe in #4598