---
title: "Unhead Release Notes · Unhead"
canonical_url: "https://unhead.unjs.io/releases"
last_updated: "2026-07-20T09:35:44.507Z"
meta:
  description: "Follow stable and pre-release versions of Unhead, including fixes, features, and upgrade details."
  "og:description": "Follow stable and pre-release versions of Unhead, including fixes, features, and upgrade details."
  "og:title": "Unhead Release Notes"
---

Home

`
Unhead on GitHub

# **Release Notes **

Last fetched: just now.

See [GitHub Releases](https://github.com/unjs/unhead/releases) for realtime updates.

- 6 days ago [<h2>v 3.3.**1**** Latest release **</h2>Release v3.3.1](https://github.com/unjs/unhead/releases/tag/v3.3.1) ###    🐞 Bug Fixes
  - **scripts**: Support source-less SDK loaders  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/858~~**](https://github.com/unjs/unhead/issues/858) [`(36dcf)`](https://github.com/unjs/unhead/commit/36dcf318)

  [**~~View changes on GitHub~~**](https://github.com/unjs/unhead/compare/v3.3.0...v3.3.1) [**View on GitHub **](https://github.com/unjs/unhead/releases/tag/v3.3.1)
- last week [<h2>v 2.1.**17**</h2>Release v2.1.17](https://github.com/unjs/unhead/releases/tag/v2.1.17) ###    🐞 Bug Fixes
  - **react**:
    - Support value in v2 client provider  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/902~~**](https://github.com/unjs/unhead/issues/902) [`(fd875)`](https://github.com/unjs/unhead/commit/fd875350)
  - **types**:
    - Narrow unpackMeta return type  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/890~~**](https://github.com/unjs/unhead/issues/890) [`(e673d)`](https://github.com/unjs/unhead/commit/e673dcb3)
  - **unhead**:
    - Force client mode during SSR  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/900~~**](https://github.com/unjs/unhead/issues/900) [`(9ad44)`](https://github.com/unjs/unhead/commit/9ad444e9)
    - Preserve numeric zero head content  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/887~~**](https://github.com/unjs/unhead/issues/887) [`(d9afa)`](https://github.com/unjs/unhead/commit/d9afaec4)
    - Dedupe scalar Twitter meta tags  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/903~~**](https://github.com/unjs/unhead/issues/903) [`(629d0)`](https://github.com/unjs/unhead/commit/629d070f)
  - **v2**:
    - Align React Head JSX behavior  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/896~~**](https://github.com/unjs/unhead/issues/896) [`(ff70b)`](https://github.com/unjs/unhead/commit/ff70b9a5)
    - Correct schema organization resolution  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/929~~**](https://github.com/unjs/unhead/issues/929) [`(54690)`](https://github.com/unjs/unhead/commit/546905de)
    - Harden framework lifecycles  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/928~~**](https://github.com/unjs/unhead/issues/928) [`(e6372)`](https://github.com/unjs/unhead/commit/e6372bc7)
    - Stabilize useScript lifecycle  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/927~~**](https://github.com/unjs/unhead/issues/927) [`(070e1)`](https://github.com/unjs/unhead/commit/070e1a0b)
    - Harden head input rendering  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/926~~**](https://github.com/unjs/unhead/issues/926) [`(6b891)`](https://github.com/unjs/unhead/commit/6b891e73) ###    🏎 Performance
  - **v2**: Reduce resolver allocations  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/930~~**](https://github.com/unjs/unhead/issues/930) [`(bba1f)`](https://github.com/unjs/unhead/commit/bba1f3b0)

  [**~~View changes on GitHub~~**](https://github.com/unjs/unhead/compare/v2.1.16...v2.1.17) [**View on GitHub **](https://github.com/unjs/unhead/releases/tag/v2.1.17)
- last week [<h2>v 3.**3.0**</h2>Release v3.3.0](https://github.com/unjs/unhead/releases/tag/v3.3.0)

  Projects using the Unhead Bundler with Vite 6 or 7, webpack, Rspack, Rollup, or another build without Rolldown no longer receive `**oxc-parser**` from `**@unhead/bundler**`. Builds that use Unhead transforms must install it directly. ### 📝 Migration

  ```
  pnpm add -D oxc-parser
  ```

  Runtime-only Unhead projects and builds with Rolldown installed need no change. ###    🚨 Breaking Changes
  - **bundler**: Make oxc-parser an optional peer  -  by @danielroe in [**~~https://github.com/unjs/unhead/issues/923~~**](https://github.com/unjs/unhead/issues/923) [`(7acca)`](https://github.com/unjs/unhead/commit/7acca68b) ###    🚀 Features
  - **bundler**: Transpile static inline scripts for Vite targets  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/862~~**](https://github.com/unjs/unhead/issues/862) [`(cb7d0)`](https://github.com/unjs/unhead/commit/cb7d0b0f)
  - **validate**: Warn on deprecated Twitter metadata  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/910~~**](https://github.com/unjs/unhead/issues/910) [`(68a50)`](https://github.com/unjs/unhead/commit/68a5072b) ###    🐞 Bug Fixes
  - Minify declarative JSON script content  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/874~~**](https://github.com/unjs/unhead/issues/874) [`(bf71e)`](https://github.com/unjs/unhead/commit/bf71e223)
  - Support browsers without Object.hasOwn  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/891~~**](https://github.com/unjs/unhead/issues/891) [`(90f38)`](https://github.com/unjs/unhead/commit/90f38fcc)
  - **react**:
    - Support Fragment children in Head  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/892~~**](https://github.com/unjs/unhead/issues/892) [`(7dd26)`](https://github.com/unjs/unhead/commit/7dd26006)
    - Preserve Helmet default title fallback  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/878~~**](https://github.com/unjs/unhead/issues/878) [`(e317a)`](https://github.com/unjs/unhead/commit/e317a1a1)
    - Normalize Head JSX props  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/893~~**](https://github.com/unjs/unhead/issues/893) [`(8ce0e)`](https://github.com/unjs/unhead/commit/8ce0ebbc)
    - Standardize provider instance prop  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/879~~**](https://github.com/unjs/unhead/issues/879) [`(7d2dc)`](https://github.com/unjs/unhead/commit/7d2dc2c7)
    - Support raw content in Head  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/894~~**](https://github.com/unjs/unhead/issues/894) [`(d0501)`](https://github.com/unjs/unhead/commit/d0501d9b)
  - **schema-org**:
    - Google rich result parity  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/919~~**](https://github.com/unjs/unhead/issues/919) [`(a9a8e)`](https://github.com/unjs/unhead/commit/a9a8e14d)
    - Missing Google rich result fields  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/920~~**](https://github.com/unjs/unhead/issues/920) [`(a58d4)`](https://github.com/unjs/unhead/commit/a58d4bf2)
    - Apply defaults when node type is absent  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/924~~**](https://github.com/unjs/unhead/issues/924) [`(0a796)`](https://github.com/unjs/unhead/commit/0a796ca9)
  - **scripts**:
    - Keep one stable proxy across script load  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/925~~**](https://github.com/unjs/unhead/issues/925) [`(dbefa)`](https://github.com/unjs/unhead/commit/dbefa3af)
  - **types**:
    - Support document speculation rules  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/873~~**](https://github.com/unjs/unhead/issues/873) [`(2ce44)`](https://github.com/unjs/unhead/commit/2ce443b5)
    - Narrow unpackMeta return type  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/889~~**](https://github.com/unjs/unhead/issues/889) [`(d9600)`](https://github.com/unjs/unhead/commit/d9600e62)
  - **unhead**:
    - Render fresh server head into DOM  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/877~~**](https://github.com/unjs/unhead/issues/877) [`(becce)`](https://github.com/unjs/unhead/commit/becce8cc)
    - Dedupe scalar Open Graph and Twitter metadata  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/880~~**](https://github.com/unjs/unhead/issues/880) [`(72d98)`](https://github.com/unjs/unhead/commit/72d98435)
    - Preserve numeric zero head content  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/885~~**](https://github.com/unjs/unhead/issues/885) [`(324df)`](https://github.com/unjs/unhead/commit/324df19b)
  - **validate**:
    - Warn on too many prefetch's  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/895~~**](https://github.com/unjs/unhead/issues/895) [`(30a2f)`](https://github.com/unjs/unhead/commit/30a2f9e3)
    - Validate head input shapes  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/884~~**](https://github.com/unjs/unhead/issues/884) [`(9d7fa)`](https://github.com/unjs/unhead/commit/9d7fa032)
  - **vue**:
    - Reject ignored server prop resolvers  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/876~~**](https://github.com/unjs/unhead/issues/876) [`(a834e)`](https://github.com/unjs/unhead/commit/a834ef6f) ###    🏎 Performance
  - **bundler**:
    - Make Vite DevTools kit optional  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/911~~**](https://github.com/unjs/unhead/issues/911) [`(d9b3d)`](https://github.com/unjs/unhead/commit/d9b3d2a6)
    - Reuse Rolldown parser when available  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/916~~**](https://github.com/unjs/unhead/issues/916) [`(bddfd)`](https://github.com/unjs/unhead/commit/bddfd460)

  [**~~View changes on GitHub~~**](https://github.com/unjs/unhead/compare/v3.2.3...v3.3.0) [**View on GitHub **](https://github.com/unjs/unhead/releases/tag/v3.3.0)
- 3 weeks ago [<h2>v 3.2.**3**</h2>Release v3.2.3](https://github.com/unjs/unhead/releases/tag/v3.2.3) ###    🐞 Bug Fixes
  - **schema-org**: Keep logo on organization identity  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/872~~**](https://github.com/unjs/unhead/issues/872) [`(13324)`](https://github.com/unjs/unhead/commit/13324a6d)

  [**~~View changes on GitHub~~**](https://github.com/unjs/unhead/compare/v3.2.2...v3.2.3) [**View on GitHub **](https://github.com/unjs/unhead/releases/tag/v3.2.3)
- 3 weeks ago [<h2>v 3.2.**2**</h2>Release v3.2.2](https://github.com/unjs/unhead/releases/tag/v3.2.2) ###    🐞 Bug Fixes
  - **schema-org**: Improve resolver correctness and types  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/868~~**](https://github.com/unjs/unhead/issues/868) [`(230e4)`](https://github.com/unjs/unhead/commit/230e4d3e)
  - **scripts**: Keep removed controllers terminal  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/867~~**](https://github.com/unjs/unhead/issues/867) [`(fa9b3)`](https://github.com/unjs/unhead/commit/fa9b3a9c)
  - **stream**: Resolve reactive entries before serialization  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/870~~**](https://github.com/unjs/unhead/issues/870) [`(ed03f)`](https://github.com/unjs/unhead/commit/ed03f941) ###    🏎 Performance
  - **schema-org**: Reduce graph resolution overhead  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/871~~**](https://github.com/unjs/unhead/issues/871) [`(62dab)`](https://github.com/unjs/unhead/commit/62dabe7a)

  [**~~View changes on GitHub~~**](https://github.com/unjs/unhead/compare/v3.2.1...v3.2.2) [**View on GitHub **](https://github.com/unjs/unhead/releases/tag/v3.2.2)
- 3 weeks ago [<h2>v 3.2.**1**</h2>Release v3.2.1](https://github.com/unjs/unhead/releases/tag/v3.2.1) ###    🐞 Bug Fixes
  - **bundler**: Preserve head.ssr mutation targets  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/866~~**](https://github.com/unjs/unhead/issues/866) [`(e8ef3)`](https://github.com/unjs/unhead/commit/e8ef34ab)

  [**~~View changes on GitHub~~**](https://github.com/unjs/unhead/compare/v3.2.0...v3.2.1) [**View on GitHub **](https://github.com/unjs/unhead/releases/tag/v3.2.1)
- 3 weeks ago [<h2>v 3.**2.0**</h2>Release v3.2.0](https://github.com/unjs/unhead/releases/tag/v3.2.0) ###    🚀 Features
  - **scripts**:
    - Add async readiness and consumer scopes  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/840~~**](https://github.com/unjs/unhead/issues/840) [`(bbdc1)`](https://github.com/unjs/unhead/commit/bbdc1de4)
    - Add opt-in trigger primitives  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/856~~**](https://github.com/unjs/unhead/issues/856) [`(cf5a9)`](https://github.com/unjs/unhead/commit/cf5a92ac)
  - **server**:
    - Experimental `**prepareTemplate**`  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/830~~**](https://github.com/unjs/unhead/issues/830) [`(0b8ca)`](https://github.com/unjs/unhead/commit/0b8cac84) ###    🐞 Bug Fixes
  - Tolerate mixed Unhead majors in Nuxt builds  -  by @harlan-zw [`(680c0)`](https://github.com/unjs/unhead/commit/680c0997)
  - **bundler**:
    - Correct build-target detection for transforms  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/829~~**](https://github.com/unjs/unhead/issues/829) [`(ea148)`](https://github.com/unjs/unhead/commit/ea14841b)
  - **react**:
    - Export provider prop types  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/854~~**](https://github.com/unjs/unhead/issues/854) [`(d15af)`](https://github.com/unjs/unhead/commit/d15afb3e)
  - **schema-org**:
    - Export missing node types  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/852~~**](https://github.com/unjs/unhead/issues/852) [`(f5bf5)`](https://github.com/unjs/unhead/commit/f5bf547a)
  - **stream**:
    - Respect backpressure/cancellation  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/827~~**](https://github.com/unjs/unhead/issues/827) [`(6395a)`](https://github.com/unjs/unhead/commit/6395a123)
    - Prevent Rollup from rewriting generated IIFE  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/863~~**](https://github.com/unjs/unhead/issues/863) [`(f6cda)`](https://github.com/unjs/unhead/commit/f6cda823)
  - **types**:
    - Expose public extension types  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/849~~**](https://github.com/unjs/unhead/issues/849) [`(83404)`](https://github.com/unjs/unhead/commit/834047c8)
    - Preserve define helper properties  -  by @harlan-zw [`(b042a)`](https://github.com/unjs/unhead/commit/b042a27c)
  - **unhead**:
    - Dedupe link tags by rel + href  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/824~~**](https://github.com/unjs/unhead/issues/824) [`(c364e)`](https://github.com/unjs/unhead/commit/c364e9e0)
    - Align Promise handling with sync rendering  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/839~~**](https://github.com/unjs/unhead/issues/839) [`(c5940)`](https://github.com/unjs/unhead/commit/c594054d) ###    🏎 Performance
  - **unhead**:
    - Precompute SSR init tags  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/828~~**](https://github.com/unjs/unhead/issues/828) [`(b6bf7)`](https://github.com/unjs/unhead/commit/b6bf7fac)
    - Reduce resolver allocations  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/838~~**](https://github.com/unjs/unhead/issues/838) [`(2a3cd)`](https://github.com/unjs/unhead/commit/2a3cd448)

  [**~~View changes on GitHub~~**](https://github.com/unjs/unhead/compare/v3.1.8...v3.2.0) [**View on GitHub **](https://github.com/unjs/unhead/releases/tag/v3.2.0)
- 3 weeks ago [<h2>v 2.1.**16**</h2>Release v2.1.16](https://github.com/unjs/unhead/releases/tag/v2.1.16) ###    🐞 Bug Fixes
  - **vue**: Expose v2 legacy plugins  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/861~~**](https://github.com/unjs/unhead/issues/861) [`(3023d)`](https://github.com/unjs/unhead/commit/3023d141)

  [**~~View changes on GitHub~~**](https://github.com/unjs/unhead/compare/v2.1.15...v2.1.16) [**View on GitHub **](https://github.com/unjs/unhead/releases/tag/v2.1.16)
- last month [<h2>v 3.1.**8**</h2>Release v3.1.8](https://github.com/unjs/unhead/releases/tag/v3.1.8) ###    🐞 Bug Fixes
  - **types**: Allow `**media**` on icon links  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/821~~**](https://github.com/unjs/unhead/issues/821) [`(ce57f)`](https://github.com/unjs/unhead/commit/ce57fd05)

  [**~~View changes on GitHub~~**](https://github.com/unjs/unhead/compare/v3.1.7...v3.1.8) [**View on GitHub **](https://github.com/unjs/unhead/releases/tag/v3.1.8)
- last month [<h2>v 3.1.**7**</h2>Release v3.1.7](https://github.com/unjs/unhead/releases/tag/v3.1.7) ###    🐞 Bug Fixes
  - Guard plugins against double registration  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/791~~**](https://github.com/unjs/unhead/issues/791) [`(2bb78)`](https://github.com/unjs/unhead/commit/2bb78f87)
  - Harden head rendering malformed input  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/814~~**](https://github.com/unjs/unhead/issues/814) [`(a18e2)`](https://github.com/unjs/unhead/commit/a18e2e2e)
  - Reduce minimal bundle size  -  by @harlan-zw [`(37600)`](https://github.com/unjs/unhead/commit/37600d64)
  - Satisfy bundle size type checks  -  by @harlan-zw [`(e8a77)`](https://github.com/unjs/unhead/commit/e8a77fbf)
  - Keep vue server exports scoped  -  by @harlan-zw [`(dae11)`](https://github.com/unjs/unhead/commit/dae110bf)
  - Harden script registry keys  -  by @harlan-zw [`(5557f)`](https://github.com/unjs/unhead/commit/5557fcfa)
  - **angular**:
    - Correct package type exports  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/802~~**](https://github.com/unjs/unhead/issues/802) [`(9e150)`](https://github.com/unjs/unhead/commit/9e15062b)
    - Request-scope the server head  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/810~~**](https://github.com/unjs/unhead/issues/810) [`(7d8e4)`](https://github.com/unjs/unhead/commit/7d8e4f60)
  - **bundler**:
    - Lazy-load Vite devtools plugin behind Vite hooks  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/790~~**](https://github.com/unjs/unhead/issues/790) [`(e66e2)`](https://github.com/unjs/unhead/commit/e66e25ed)
  - **dom**:
    - Correct and optimize the client DOM renderer  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/787~~**](https://github.com/unjs/unhead/issues/787) [`(ace35)`](https://github.com/unjs/unhead/commit/ace356f0)
  - **react**:
    - Make composables StrictMode double-invoke safe  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/809~~**](https://github.com/unjs/unhead/issues/809) [`(7a5ba)`](https://github.com/unjs/unhead/commit/7a5ba0c3)
  - **schema-org**:
    - Missing subpath exports and vue import cycle  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/785~~**](https://github.com/unjs/unhead/issues/785) [`(10a21)`](https://github.com/unjs/unhead/commit/10a21dad)
  - **solid-js**:
    - Harden streaming wrapper  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/804~~**](https://github.com/unjs/unhead/issues/804) [`(9b383)`](https://github.com/unjs/unhead/commit/9b383286)
  - **streaming**:
    - Use emitted Vite IIFE asset URL  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/789~~**](https://github.com/unjs/unhead/issues/789) [`(4e368)`](https://github.com/unjs/unhead/commit/4e368bce)
  - **unhead**:
    - Identity-based useScript callback and trigger cleanup  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/807~~**](https://github.com/unjs/unhead/issues/807) [`(67d35)`](https://github.com/unjs/unhead/commit/67d35ca3)
  - **vue**:
    - Avoid render-scoped Head watchers  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/806~~**](https://github.com/unjs/unhead/issues/806) [`(48e30)`](https://github.com/unjs/unhead/commit/48e3029c)
    - Normalize useSeoMeta patches  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/805~~**](https://github.com/unjs/unhead/issues/805) [`(dc2b8)`](https://github.com/unjs/unhead/commit/dc2b801f)
  - **vue,svelte,angular,solid**:
    - Dispose useScript callbacks by identity  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/808~~**](https://github.com/unjs/unhead/issues/808) [`(b796a)`](https://github.com/unjs/unhead/commit/b796acf9) ###    🏎 Performance
  - Optimize SSR hot paths  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/794~~**](https://github.com/unjs/unhead/issues/794) [`(f806f)`](https://github.com/unjs/unhead/commit/f806f813)
  - Reduce bundle size  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/817~~**](https://github.com/unjs/unhead/issues/817) [`(89781)`](https://github.com/unjs/unhead/commit/897819c6)
  - **schema-org**:
    - Skip unused duplicate cleanup  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/816~~**](https://github.com/unjs/unhead/issues/816) [`(90ab8)`](https://github.com/unjs/unhead/commit/90ab8cd7)
    - Reduce entry normalization  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/815~~**](https://github.com/unjs/unhead/issues/815) [`(aa9c7)`](https://github.com/unjs/unhead/commit/aa9c75c4)
  - **ssr**:
    - Self-closing tag hot path  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/801~~**](https://github.com/unjs/unhead/issues/801) [`(dafb4)`](https://github.com/unjs/unhead/commit/dafb4307)
  - **unhead**:
    - Avoid fallback hash allocations  -  by @TheAlexLichter in [**~~https://github.com/unjs/unhead/issues/784~~**](https://github.com/unjs/unhead/issues/784) [`(9916b)`](https://github.com/unjs/unhead/commit/9916b190)
    - Structural-sharing walkResolver to cut SSR allocation  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/812~~**](https://github.com/unjs/unhead/issues/812) [`(7dbdc)`](https://github.com/unjs/unhead/commit/7dbdcc40)
    - Remove the dead unhead:payload mechanism  -  by @harlan-zw in [**~~https://github.com/unjs/unhead/issues/813~~**](https://github.com/unjs/unhead/issues/813) [`(9cb64)`](https://github.com/unjs/unhead/commit/9cb64309)

  [**~~View changes on GitHub~~**](https://github.com/unjs/unhead/compare/v3.1.6...v3.1.7) [**View on GitHub **](https://github.com/unjs/unhead/releases/tag/v3.1.7)

Looking for older releases?

[**View all releases on GitHub **](https://github.com/unjs/unhead/releases)