Skip to content

Releases: nuxt/image

v1.0.0

19 Oct 13:16
Compare
Choose a tag to compare

compare changes

🩹 Fixes

  • cloudimage: Skip cdn when src path is provided with protocol (#1028)
  • ipx: ⚠️ Pass all options (#1056)
  • Type-only import of IPXRuntimeConfig (0b6bd83)
  • Autocomplete <NuxtImg> loading attribute (#1057)

📖 Documentation

🏡 Chore

⚠️ Breaking Changes

  • ipx: ⚠️ Pass all options (#1056)

❤️ Contributors

v1.0.0-rc.3

02 Oct 14:39
Compare
Choose a tag to compare
v1.0.0-rc.3 Pre-release
Pre-release

1.0.0-rc.3 is the next release candidate

🗞️ Next steps

  1. We're planning to release v1 of Nuxt Image next week and try to auto-install it when used in new Nuxt projects.

  2. IPX v2 is in prerelease now, and we aim to release it in line with the new major version of Nuxt Image - there are a few exciting tasks on roadmap for IPX v2 with some coming in next minor versions.

✅ Upgrading

As usual, our recommendation for upgrading is to run:

nuxi upgrade

This will prompt you to refresh your lockfile as well and ensure that you pull in updates from other dependencies that Nuxt relies on, particularly in the unjs ecosystem.

👉 Changelog

compare changes

🚀 Enhancements

  • ⚠️ Migrate to ipx v2 (#988)
  • Add nonce support (#1012)

🩹 Fixes

  • cloudinary: Handle blur modifier correctly (#985)

📖 Documentation

  • Track anonymous search queries (dd4451e)
  • Add query in search event (92f71da)
  • Update deps (d39eab1)
  • Display supported unsplash parameters as a list (#995)
  • Update to ui pro (a9cc6bd)
  • Add contribution guide (fdc0975)
  • Remove stray code block (#1016)

🏡 Chore

  • Split out docs updates into separate PRs (8cb7c50)
  • Expand renovate group to nuxt ui prefix (adbdff3)

🤖 CI

⚠️ Breaking Changes

  • ⚠️ Migrate to ipx v2 (#988)

❤️ Contributors

v1.0.0-rc.2

13 Sep 23:21
Compare
Choose a tag to compare
v1.0.0-rc.2 Pre-release
Pre-release

1.0.0-rc.2 is the next release candidate

Timetable: 13 September

👀 Highlights

⚖️ Densities

  • We now support densities - and warn if you use a density above 2x (#769).

🌅 Formats

  • We now support multiple formats in <NuxtPicture> and setting global default values.

📐 Responsive sizes

  • 🚨 This is a behaviour change. We now default to responsive-first image sizes, and output sizes/srcset even when only a single size is provided. See #977 for full details.

⚡️ Static support

  • We now support purely-generate-time static images for environments like cloudflare (#878).

There's lots more - do check out the full details below.

Our next RC will be coming soon with all-new IPX v2, as well as some work on better defaults (e.g. automatic format detection where possible).

✅ Upgrading

As usual, our recommendation for upgrading is to run:

nuxi upgrade

This will prompt to refresh your lockfile as well, and ensures that you pull in updates from other dependencies that Nuxt relies on, particularly in the unjs ecosystem.

👉 Changelog

compare changes

🚀 Enhancements

  • Support densities for devices with DevicePixelRatio > 1 (#769)
  • nuxt-picture: Support multiple image formats (#684)
  • Add prepr cms image provider integration (#823)
  • Allow setting global format defaults in config (#880)
  • Allow setting global quality defaults in config (#884)
  • Add uploadcare provider (#740)
  • nuxt-img: Placeholder default blur + improve playground (#966)
  • Add apiVersion to cloudimage provider (#955)
  • ⚠️ Switch sizes default to responsive-first (#977)
  • Add ipxStatic provider (#878)

🩹 Fixes

  • Apply sizes/srcset when using placeholder (#676)
  • Run setup and add none to providers list (#860)
  • Remove key for picture/image to stop flicker when loading (#760)
  • storyblok: Don't apply resize/format/filter on vector (#870)
  • Address miscellaneous bugs with new 'densities' prop (#872)
  • Add explicit import for useImage (4865ccb)
  • Augment runtime config with explicit ipx key (d73833b)
  • Provide default ipx opts earlier (2f62c05)
  • Respect densities prop with (#928)
  • Warn in dev mode if density is provided above 2x (#973)
  • Generate sizes when only a single sizes is provided (#920)

📖 Documentation

  • Add rc tag to home page cta (d50d705)
  • providers: Cloudflare image is available to all plans now (99cb37f)
  • Remove unused module options (07836ae)
  • Update link to v0 docs (37395b7)
  • Make it nice (08d5645)
  • Fix link (cb96767)
  • Fix link (343dda0)
  • Upgraded documentation (#953)
  • Update elements (c3a2e25)
  • Add Nuxt Studio (bad4420)
  • Update deps and add canonical (#957)
  • Improve gradient (9f026b2)
  • Update color palette (green) (9f93a2e)
  • Update deps (f6b038a)
  • Leverage UPageLinks (8423773)
  • Fix typo in Storyblok provider (#959)
  • Move to @nuxt/ui and leverage autoSubfolderIndex false (549cbf5)
  • Migrate to routeRules for redirects (4db1c5a)
  • Move to ULandingCard (e0a8183)
  • Fix text center on hero (bfcb955)
  • Update colors (23ef384)
  • Remove unused styles (bd00755)

🏡 Chore

  • release: V1.0.0-rc.1 (1e4a95a)
  • Update changelog for rc.0 (8cd9b0f)
  • Add link to social card (56d8b71)
  • Ignore vitest updates for now (eb5702f)
  • Upgrade dependencies and dedupe lockfile (#947)
  • Bump h3 dependency (75ecf56)
  • Revert to Nitro 2.6.2 (680fe4c)
  • Update docs and dev dependencies (#972)
  • Update lockfile (6058c63)
  • Add stackblitz playground link (fc98960)
  • Add reproduire workflows (ae81f77)
  • Fix typo (60b96ae)

✅ Tests

  • Ensure is rendered with custom format (fcc9b7a)
  • Pass string to fit (1a8c782)
  • Iterate over providers array with for/of (df062d0)
  • Move to v8 coverage engine (6fb8ef6)

🎨 Styles

  • Add spaces around string literal types (3badcb8)

🤖 CI

  • Test coverage and split out release job (c4a8ff6)
  • Run tests on node 20.5 until hotfix arrives (a5bd7de)

⚠️ Breaking Changes

  • ⚠️ Switch sizes default to responsive-first (#977)

❤️ Contributors

v1.0.0-rc.1

06 Jun 19:53
Compare
Choose a tag to compare
v1.0.0-rc.1 Pre-release
Pre-release

Work on updating the image module for Nuxt 3 began on Jul 8, 2022. After months of progress and continuous feedback, this is the first (semi-stable) version of the Image module ready for Nuxt 3 🚀

🚦 Roadmap to v1

This is the first release candidate (RC1). We plan a quick RC process, and over that period, we plan to mainly stabilize the module and add some enhancements:

  • Addressing most demanded feature requests and bug fixes
  • Support multi-sources and server-side caching using Nuxt 3's built-in Storage Layer for the default image optimizer (unjs/ipx)
  • Better support for screen densities
  • Better support for static output targets (we are tracking key issues)
  • Integrate more closely with Nuxt 3 Core

✅ Upgrading

If you have been using the edge channel, you can now switch back to the main @nuxt/image package name. You can use the rc tag which will pull in the latest release candidate.

  {
    "devDependencies": {
-     "@nuxt/image-edge": "latest",
+     "@nuxt/image": "rc",
      "nuxt": "latest"
    }
  }

You should also update your nuxt.config:

  export default defineNuxtConfig({
    modules: [
-     '@nuxt/image-edge'
+     '@nuxt/image'
    ],
  })

👉 Changelog

🚀 Enhancements

  • Initial rewrite for nuxt 3 support (64dfecc)
  • Migrate to composition api (#571)
  • vercel: Set image config using v3 output api (4d8aab0)
  • Support prerendering static images (#614)
  • Support load event for nuxt-img and nuxt-picture (#702)
  • Add data-nuxt-img and data-nuxt-pic attrs (#747)
  • Add none provider and only enable ipx when node present (#840)
  • Add directus provider (#787)
  • Add wagtail provider (#774)

🔥 Performance

  • Do not inject $img by default (#836)

🩹 Fixes

  • Add missing defineNuxtPlugin import (e5ca160)
  • Use resolver to resolve built-in providers (bb8381c)
  • ipx: Ensure leading slash is added to ipx url (93ce78a)
  • vercel: Remove dependency of fs-extra (23076b8)
  • Update nuxt version constraint (#603)
  • Add implicit imports (db0934c)
  • Provide empty array if source data is not present (#606)
  • vercel: Update image to images and add ttl (a3cd82c)
  • imagekit: Transformation query param generation (#610)
  • AddAutoImport has been renamed to addImports (#648)
  • Update ipx (b087201)
  • nuxt-picture: Only pass defined props to <nuxt-img> component (#620)
  • Default dir value (cc4a09d)
  • nuxt-img: Access prerender.env only in server side (#661)
  • Pass ipx maxAge option from options (#706)
  • ⚠️ Improve prerendering support (#725)
  • module: Parse options.domains with parseURL #659 (#680, #659)
  • cloudinary: Update mapping key for density (#730)
  • unsplash: Merge query params with src (#712)
  • ipx: Use actual relative ipx dir (#779)
  • ipx: Support runtime nuxt baseURL (#778)
  • ipx: Set prerenderer config as well (#784)
  • Use absolute path for prerenderer (#788)
  • sanity: Add dpr modifier (#789)
  • pkg: Relax upper node version constraint (#818)
  • Correctly apply provided format to <NuxtPicture> (#827)
  • Type vercel nitro config correctly (2679d60)
  • Remove ignored second arg for hash (52ba7aa)
  • Prerender static images when calling createImage (d927447)
  • nuxt-picture: Render svgs with src not srcset (46939f1)
  • Ensure $img injection is correctly typed (ed573bb)
  • Test for imgEl before setting src (e5a294e)
  • Respect dir option from module for ipx (7e187e5)
  • Use publicDir for runtime ipx generation (#849)
  • pkg: Use esm build as main field (#848)
  • Emit synthetic load and error events on initial hydration (#842)
  • Remove placeholder plugin (1cd2ef1)

💅 Refactors

  • ipx: Use event.node.req and event.node.res (#777)

📖 Documentation

  • Advice modules instead of buildModules (#557)
  • Update static/ dir to public/ (#558)
  • Update lint to nuxt 3 (4e029e2)
  • Update default provider section (35c8a9d)
  • Change static/ to public/ (#566)
  • Upgrade docus and improve structure (#564)
  • Fix link to unsplash license (#579)
  • Update to script setup (4b27db3)
  • Upgrade to latest Docus (#678)
  • Fix cloudflare usage example (255d991)
  • Fix typo (#670)
  • Fix typo in api docs (#754)
  • Update badge (4cee565)
  • Update codesandbox link and refresh example lockfile (10c8735)
  • Update nuxt config definition (#816)
  • Update default dir value (f293072)

📦 Build

  • Change node engine requirement to be same as nuxt3 (4c23770)

✅ Tests

  • Add back and update tests (#830)
  • Update implementation of <ProviderSelector> (295b8c4)
  • Test types in module and fixtures (28f550d)
  • Sort file snapshot (b3a9089)
  • Remove leftover code (c7531e0)
  • Add test for URI encoding (852371a)
  • Add test for load and error events (#841)
  • Add unit test for correct crop sizing (682b674)
  • Extract mountImage helper (5c21f4c)

🎨 Styles

  • cloudinary: Remove dangle comma (#733)
  • Fix lint (2ed711e)

❤️ Contributors

v0.7.0

22 Jun 20:48
@pi0 pi0
Compare
Choose a tag to compare

We have updated documentation with a fresh look and Nux 3.

Alongside dependency upgrades and security and stability enhancements from unjs/ipx, this release introduces new providers:

🚀 Enhancements

  • cloudinary: Add types for options and modifiers (#511)
  • Cloudimage provider (#523)
  • twicpics: Fix modifiers and improve documentation (#503)
  • storyblok: Update to the new service (#497)
  • Layer0 provider (#501)
  • Cloudflare provider (#359)
  • Support placeholder (#477) [experimental]

🩹 Fixes

  • ipx: Allow overriding baseURL regardless of router base (#484)
  • ipx: nuxtContext is optional (37f09b0)
  • nuxt-img, nuxt-picture: Return empty object from head when preload is disabled (#528)
  • Normalize domains to hostname (resolves #486)

📖 Documentation

  • Mention lazy loading for (#505)
  • Add nuxt3 incompatibility warning (#504)
  • Update banner (d9783d6)
  • Add example for default modifiers (#509)
  • Mention avif format support (ceb4ad8)
  • Upgrade to docus (#529)

⚠️ Breaking Changes

  • ⚠️ Update dependencies (d4de9d3)
  • pkg: ⚠️ Add engines field to require node>=14.16 (38d77f1)

✅ Tests

❤️ Contributors

  • Amr Hamdy
  • Damien Robinson
  • Gavyn McKenzie
  • Jakub Doboš
  • Jean-Matthieu DECHRISTÉ
  • Jorge Martins
  • Keen Yee Liau
  • Miguel Beignon
  • Paw
  • Robert
  • Sylvain Marroufin