Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: honojs/hono
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v4.12.9
Choose a base ref
...
head repository: honojs/hono
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v4.12.10
Choose a head ref
  • 6 commits
  • 9 files changed
  • 4 contributors

Commits on Mar 30, 2026

  1. Configuration menu
    Copy the full SHA
    018277e View commit details
    Browse the repository at this point in the history

Commits on Mar 31, 2026

  1. Configuration menu
    Copy the full SHA
    f47b559 View commit details
    Browse the repository at this point in the history
  2. fix(jsx/dom): apply select value after children are rendered (#4847)

    * fix(jsx/dom): apply select value after children are rendered
    
    When options and value were set simultaneously on a select element,
    the value was applied before option children existed in the DOM,
    causing selectedIndex to fall back to 0.
    
    Defer select value assignment to after children rendering, similar
    to Preact's approach. This ensures options exist in the DOM before
    value matching, while other props like `multiple` are still applied
    before children.
    
    * fix(jsx/dom): fix select value sync edge cases
    
    For multiple selects with no matching option, selectedIndex was
    incorrectly forced to 0. Only reset selectedIndex for single
    selects, preserving the browser's default -1 for unmatched
    multiple selects.
    
    * perf(jsx/dom): use child.tag instead of el.nodeName for select check
    
    Avoid DOM property access in the hot render loop by checking the
    JSX node's tag property directly.
    usualoma authored Mar 31, 2026
    Configuration menu
    Copy the full SHA
    75b4308 View commit details
    Browse the repository at this point in the history
  3. fix(compress): convert strong ETag to weak ETag when compressing (#4848)

    Compressed content is not byte-identical to the original, so strong
    ETags violate HTTP semantics (RFC 9110). Convert them to weak ETags
    by adding the W/ prefix, matching the behavior of nginx, Apache, and
    Express.
    usualoma authored Mar 31, 2026
    Configuration menu
    Copy the full SHA
    0bce36b View commit details
    Browse the repository at this point in the history

Commits on Apr 1, 2026

  1. docs(ip-restriction): add clear JSDoc examples and param types (#4851)

    Adds a comprehensive @example block and fully documents the @param and @returns tags for the  middleware to help developers understand its capabilities regarding allowList/denyList out of the box.
    VISHNU7KASIREDDY authored Apr 1, 2026
    Configuration menu
    Copy the full SHA
    a8c56a6 View commit details
    Browse the repository at this point in the history

Commits on Apr 2, 2026

  1. 4.12.10

    yusukebe committed Apr 2, 2026
    Configuration menu
    Copy the full SHA
    9f374a5 View commit details
    Browse the repository at this point in the history
Loading