v4.9.5
- chore: replace supertest with undici by @BarryThePenguin in https://github.com/honojs/hono/pull/4365
- fix(aws-lambda): preserve percent-encoded values in query strings by @yusukebe in https://github.com/honojs/hono/pull/4372
- feat(cors): Allow async functions for
origin
andallowMethods
by @jobrk in https://github.com/honojs/hono/pull/4373 - feat(cors): Correct origin function return type asynchronously returning null or undefined for origin by @jobrk in https://github.com/honojs/hono/pull/4375
- fix(service-worker): correct args for
app.fetch
inhandle
by @yusukebe in https://github.com/honojs/hono/pull/4374 - fix(language-detector): Detect language from path after getPath changed by @iflamed in https://github.com/honojs/hono/pull/4369
- @jobrk made their first contribution in https://github.com/honojs/hono/pull/4373
- @iflamed made their first contribution in https://github.com/honojs/hono/pull/4369
Full Changelog: https://github.com/honojs/hono/compare/v4.9.4...v4.9.5
v4.9.4
- chore: add a type cast to run
deno publish
by @yusukebe in https://github.com/honojs/hono/pull/4364
Full Changelog: https://github.com/honojs/hono/compare/v4.9.3...v4.9.4
v4.9.3
- feat(csrf): Add modern CSRF protection with Fetch Metadata support by @meck93 in https://github.com/honojs/hono/pull/4353
- tests: use vitest projects by @BarryThePenguin in https://github.com/honojs/hono/pull/4359
- feat(proxy): add
customFetch
option to allow custom fetch function by @yusukebe in https://github.com/honojs/hono/pull/4360 - chore: update
typescript
to5.9.2
by @yusukebe in https://github.com/honojs/hono/pull/4362 - chore: add
packageManager
field topackage.json
by @yusukebe in https://github.com/honojs/hono/pull/4363
Full Changelog: https://github.com/honojs/hono/compare/v4.9.2...v4.9.3
v4.9.2
- fix(jsx): 'plaintext-only' value for contenteditable attribute by @object1037 in https://github.com/honojs/hono/pull/4349
- fix(client): handle query parameters in
removeIndexString
by @yusukebe in https://github.com/honojs/hono/pull/4352
- @object1037 made their first contribution in https://github.com/honojs/hono/pull/4349
Full Changelog: https://github.com/honojs/hono/compare/v4.9.1...v4.9.2
v4.9.1
- feat(parseResponse): set
DetailedError.name
(+ error tests) by @NamesMT in https://github.com/honojs/hono/pull/4344 - fix(parseResponse): should not include error responses in result by @NamesMT in https://github.com/honojs/hono/pull/4348
Full Changelog: https://github.com/honojs/hono/compare/v4.9.0...v4.9.1
v4.9.0
Hono v4.9.0 is now available!
This release introduces several enhancements and utilities.
The main highlight is the new parseResponse
utility that makes it easier to work with RPC client responses.
The new parseResponse
utility provides a convenient way to parse responses from Hono RPC clients (hc
). It automatically handles different response formats and throws structured errors for failed requests.
import { parseResponse, DetailedError } from 'hono/client'
// result contains the parsed response body (automatically parsed based on Content-Type)
const result = await parseResponse(client.hello.$get()).catch(
// parseResponse automatically throws an error if response is not ok
(e: DetailedError) => {
console.error(e)
}
)
This makes working with RPC client responses much more straightforward and type-safe.
Thanks @NamesMT!
- feat(bun): allow importing upgradeWebSocket and websocket directly https://github.com/honojs/hono/pull/4242
- feat(aws-lambda): specify content-type as binary https://github.com/honojs/hono/pull/4250
- feat(jwt): add validation for the issuer (iss) claim https://github.com/honojs/hono/pull/4253
- feat(jwk): add headerName to JWK middleware https://github.com/honojs/hono/pull/4279
- feat(cookie): add generateCookie and generateSignedCookie helpers https://github.com/honojs/hono/pull/4285
- feat(serve-static): use join to correct path resolution https://github.com/honojs/hono/pull/4291
- feat(jwt): expose utility function verifyWithJwks for external use https://github.com/honojs/hono/pull/4302
- feat: add parseResponse util to smartly parse hc's Response https://github.com/honojs/hono/pull/4314
- feat(ssg): mark old hook options as deprecated https://github.com/honojs/hono/pull/4331
- feat(aws-lambda): specify content-type as binary by @Kanahiro in https://github.com/honojs/hono/pull/4250
- feat(jwt): added validation for the issuer (
iss
) claim by @yolocat-dev in https://github.com/honojs/hono/pull/4253 - feat(jwk): Add custom
headerName
to JWK middleware by @JoaquinGimenez1 in https://github.com/honojs/hono/pull/4279 - feat(cookie): generateCookie and generateSignedCookie helpers by @Soviut in https://github.com/honojs/hono/pull/4285
- feat(serve-static): use
join
to correct path resolution by @yusukebe in https://github.com/honojs/hono/pull/4291 - feat(jwt): Exposing utility function
verifyWithJwks
for external use by @Beyondo in https://github.com/honojs/hono/pull/4302 - feat: add
parseResponse
util to smartly parsehc
's Response by @NamesMT in https://github.com/honojs/hono/pull/4314 - feat(ssg): mark old hook options as deprecated by @3w36zj6 in https://github.com/honojs/hono/pull/4331
- fix(bun): exports functions related to websocket by @yusukebe in https://github.com/honojs/hono/pull/4341
- Next by @yusukebe in https://github.com/honojs/hono/pull/4340
- chore: enable
skipLibCheck
to resolve TypeScript compilation issues by @yusukebe in https://github.com/honojs/hono/pull/4342
- @yolocat-dev made their first contribution in https://github.com/honojs/hono/pull/4253
- @JoaquinGimenez1 made their first contribution in https://github.com/honojs/hono/pull/4279
- @Soviut made their first contribution in https://github.com/honojs/hono/pull/4285
Full Changelog: https://github.com/honojs/hono/compare/v4.8.12...v4.9.0
v4.8.12
- fix(router): support
/files/:name{.*}
by @yusukebe in https://github.com/honojs/hono/pull/4329
Full Changelog: https://github.com/honojs/hono/compare/v4.8.11...v4.8.12
v4.8.11
- fix(types): should populate
output
type forc.body()
by @NamesMT in https://github.com/honojs/hono/pull/4318 - ci: add editorconfig-checker by @3w36zj6 in https://github.com/honojs/hono/pull/4321
- fix(service-worker): pass
FetchEvent
as second argument toapp.fetch
by @yusukebe in https://github.com/honojs/hono/pull/4328 - chore(ci): upgrade bun version to 1.2.19 by @BarryThePenguin in https://github.com/honojs/hono/pull/4323
- chore: bump
@hono/eslint-config
by @yusukebe in https://github.com/honojs/hono/pull/4330 - chore: autofix ci by @BarryThePenguin in https://github.com/honojs/hono/pull/4322
Full Changelog: https://github.com/honojs/hono/compare/v4.8.10...v4.8.11
v4.8.10
- chore: add EditorConfig by @3w36zj6 in https://github.com/honojs/hono/pull/4309
- chore: format JSON, YAML, and Markdown by @yusukebe in https://github.com/honojs/hono/pull/4310
- chore: format and lint
benchmarks/*
by @yusukebe in https://github.com/honojs/hono/pull/4317 - refactor(types): bring adapter/service-worker types up to date by @idealsh in https://github.com/honojs/hono/pull/4315
- chore: add editorconfig-checker by @3w36zj6 in https://github.com/honojs/hono/pull/4312
- fix(cookie): support lowercase priority for compatibility with other libraries by @bytaesu in https://github.com/honojs/hono/pull/4293
- @idealsh made their first contribution in https://github.com/honojs/hono/pull/4315
- @bytaesu made their first contribution in https://github.com/honojs/hono/pull/4293
Full Changelog: https://github.com/honojs/hono/compare/v4.8.9...v4.8.10
v4.8.9
- fix(context): use
isByteString
inc.redirect
by @yusukebe in https://github.com/honojs/hono/pull/4307
Full Changelog: https://github.com/honojs/hono/compare/v4.8.8...v4.8.9