Skip to content

Releases: Shopify/hydrogen

skeleton@2026.4.3

08 Jun 16:56
253bb27

Choose a tag to compare

Patch Changes

@shopify/remix-oxygen@3.0.4

08 Jun 16:56
253bb27

Choose a tag to compare

Patch Changes

  • Widen React Router peer dependency ranges so Hydrogen packages accept compatible React Router 7.16 patch versions without npm peer dependency conflicts. New Hydrogen projects now default to React Router 7.16.0. (#3771) by @fredericoo

@shopify/hydrogen@2026.4.3

08 Jun 16:56
253bb27

Choose a tag to compare

Patch Changes

  • Fix cart.get() to use provided cartId before falling back to getCartId() (#3664) by @Vitalini

  • Fix Image component generating 1x/2x/3x density descriptors instead of w descriptors for fluid (responsive) images whose source dimensions cap the srcset to exactly 3 entries. (#3756) by @z0n

    What was happening: When a product image stored in Shopify was small enough that the default srcset ladder (200px, 400px, 600px, 800px, …) was filtered down to exactly 3 entries by the source-dimension cap, the Image component incorrectly switched to density descriptors (1x/2x/3x) and silently ignored the sizes attribute. On a DPR-1 screen this caused the smallest srcset entry (200px) to be used regardless of the rendered image size, resulting in blurry images.

    The fix: Descriptor type (density vs width) is now determined by whether the image is in fixed or fluid mode — not by how many srcset entries happen to survive source-dimension filtering.

  • Fix storefrontRedirect not working for client-side navigations. React Router v7's Single Fetch changed how data requests work — they now use a .data pathname suffix instead of a _data query parameter. storefrontRedirect now correctly detects both conventions, strips the .data suffix before matching redirects, and returns the proper 204 status code for soft navigation redirect responses. (#3762) by @fredericoo

  • Add generic cart result typing to createCartHandler so custom cart fragments can use their generated fragment types. (#3767) by @andguy95

  • Widen React Router peer dependency ranges so Hydrogen packages accept compatible React Router 7.16 patch versions without npm peer dependency conflicts. New Hydrogen projects now default to React Router 7.16.0. (#3771) by @fredericoo

  • Updated dependencies [a810db483c108ac8bbeaac45595b130ed95a2ec7]:

    • @shopify/hydrogen-react@2026.4.3

@shopify/hydrogen-react@2026.4.3

08 Jun 16:56
253bb27

Choose a tag to compare

Patch Changes

  • Fix Image component generating 1x/2x/3x density descriptors instead of w descriptors for fluid (responsive) images whose source dimensions cap the srcset to exactly 3 entries. (#3756) by @z0n

    What was happening: When a product image stored in Shopify was small enough that the default srcset ladder (200px, 400px, 600px, 800px, …) was filtered down to exactly 3 entries by the source-dimension cap, the Image component incorrectly switched to density descriptors (1x/2x/3x) and silently ignored the sizes attribute. On a DPR-1 screen this caused the smallest srcset entry (200px) to be used regardless of the rendered image size, resulting in blurry images.

    The fix: Descriptor type (density vs width) is now determined by whether the image is in fixed or fluid mode — not by how many srcset entries happen to survive source-dimension filtering.

@shopify/create-hydrogen@5.0.37

08 Jun 16:56
253bb27

Choose a tag to compare

Patch Changes

  • Include line item children recursively in cart. (#3753) by @martin-pettersson

  • Add generic cart result typing to createCartHandler so custom cart fragments can use their generated fragment types. (#3767) by @andguy95

  • Widen React Router peer dependency ranges so Hydrogen packages accept compatible React Router 7.16 patch versions without npm peer dependency conflicts. New Hydrogen projects now default to React Router 7.16.0. (#3771) by @fredericoo

@shopify/cli-hydrogen@12.0.1

08 Jun 16:56
253bb27

Choose a tag to compare

Patch Changes

  • Include line item children recursively in cart. (#3753) by @martin-pettersson

  • Add generic cart result typing to createCartHandler so custom cart fragments can use their generated fragment types. (#3767) by @andguy95

  • Widen React Router peer dependency ranges so Hydrogen packages accept compatible React Router 7.16 patch versions without npm peer dependency conflicts. New Hydrogen projects now default to React Router 7.16.0. (#3771) by @fredericoo

skeleton@2026.4.2

24 Apr 18:15
6fed75f

Choose a tag to compare

Patch Changes

@shopify/mini-oxygen@4.1.0

24 Apr 18:15
6fed75f

Choose a tag to compare

Minor Changes

  • Add support for Vite 7 and Vite 8. Hydrogen remains backwards-compatible with Vite 5+. (#3617) by @frandiox

    Mini Oxygen's dev server has been refactored to use the Vite Environment API, which is the standard way to run non-browser runtimes in Vite. This replaces the previous custom middleware approach with a first-class FetchableDevEnvironment, improving compatibility with Vite's built-in HMR and module invalidation.

    New Hydrogen projects created with npm create @shopify/hydrogen will default to Vite 8. The vite-tsconfig-paths plugin is no longer needed in the skeleton template since Vite 8 supports resolve.tsconfigPaths natively.

@shopify/hydrogen@2026.4.2

24 Apr 18:15
6fed75f

Choose a tag to compare

Minor Changes

  • Add support for Vite 7 and Vite 8. Hydrogen remains backwards-compatible with Vite 5+. (#3617) by @frandiox

    Mini Oxygen's dev server has been refactored to use the Vite Environment API, which is the standard way to run non-browser runtimes in Vite. This replaces the previous custom middleware approach with a first-class FetchableDevEnvironment, improving compatibility with Vite's built-in HMR and module invalidation.

    New Hydrogen projects created with npm create @shopify/hydrogen will default to Vite 8. The vite-tsconfig-paths plugin is no longer needed in the skeleton template since Vite 8 supports resolve.tsconfigPaths natively.

Patch Changes

@shopify/hydrogen-react@2026.4.2

24 Apr 18:15
6fed75f

Choose a tag to compare

Minor Changes

  • Add support for Vite 7 and Vite 8. Hydrogen remains backwards-compatible with Vite 5+. (#3617) by @frandiox

    Mini Oxygen's dev server has been refactored to use the Vite Environment API, which is the standard way to run non-browser runtimes in Vite. This replaces the previous custom middleware approach with a first-class FetchableDevEnvironment, improving compatibility with Vite's built-in HMR and module invalidation.

    New Hydrogen projects created with npm create @shopify/hydrogen will default to Vite 8. The vite-tsconfig-paths plugin is no longer needed in the skeleton template since Vite 8 supports resolve.tsconfigPaths natively.

Patch Changes

  • Fixed the CartProvider example code (both TS and JS) to include the missing return statement in the App component. (#3685) by @J8118

  • Fixed the ProductProvider example code (both TS and JS): restored the missing return in the .map() callback so option buttons render, and removed a stray semicolon that rendered as visible text. (#3680) by @J8118