v0.11.0
This is an important release that brings us closer to release candidate. Please read the migration guide carefully, as there are a number of breaking changes. You can also use this pull request to view the changes between a brand new app in version 0.10.1 and version 0.11.0.
Warning: There are many breaking changes involved in this release. If you have not yet invested much time in customizing a v0.10 Hydrogen app, we recommend starting from scratch with v0.11 by running npx create-hydrogen-app@latest or waiting until the Release Candidate is announced.
Breaking changes
Refer to migration guide on all the breaking changes.
What's Changed
- feat: avoid bundling all client components in server by @frandiox in Shopify/hydrogen#529
- feat: Add useLoadScript custom hook by @frehner in Shopify/hydrogen#478
- dx: correct default Props type to not include 'as' by @frehner in Shopify/hydrogen#523
- dx: update cart typescript types and related documentation by @frehner in Shopify/hydrogen#561
- docs: add compatibility_date for CFW deployment by @frandiox in Shopify/hydrogen#568
- feat: add optional trace logging for entry-server by @blittle in Shopify/hydrogen#506
- feat: misc updates to CLI starter template by @cartogram in Shopify/hydrogen#531
- Track page performance by @wizardlyhel in Shopify/hydrogen#528
- docs: clarify node minimum requirement by @tjoyal in Shopify/hydrogen#572
- fix: index routes #562 by @blittle in Shopify/hydrogen#566
- Dx export product by @frehner in Shopify/hydrogen#574
- feat: add cartLinesTotalQuantity to useCart() by @frehner in Shopify/hydrogen#567
- [Hydrogen starter template]: Update link to docs by @mcvinci in Shopify/hydrogen#577
- refactor: rename Model3D to ModelViewer by @frehner in Shopify/hydrogen#564
- Missing server state on SSR pass by @wizardlyhel in Shopify/hydrogen#578
- refactor: remove old windows fix by @frandiox in Shopify/hydrogen#585
- dx [breaking]: Remove all the extra cart hooks and use 'useCart()' instead by @frehner in Shopify/hydrogen#579
- feat: transition away from deprecated currency selector in favor of country selector by @tjoyal in Shopify/hydrogen#570
- fix: add charset to content type in HTML responses by @frandiox in Shopify/hydrogen#586
- feat: use hashes for client component ids instead of absolute paths by @frandiox in Shopify/hydrogen#580
- Fix mobile nav scroll by @Francismori7 in Shopify/hydrogen#582
- refactor [breaking change]: change
Metafield
rendered output for two types by @frehner in Shopify/hydrogen#594 - feat: Introduce page & colleciton level SEO and make the product and … by @michenly in Shopify/hydrogen#539
- fix: remove addicental debugger statement by @michenly in Shopify/hydrogen#602
- dx [breaking change]: Remove function-as-a-child pattern from and components... by @frehner in Shopify/hydrogen#595
- feat: add robots.txt server component by @jplhomer in Shopify/hydrogen#534
- fix: Always pass in a MoneyV2 to useMoney, and then compare amount by @frehner in Shopify/hydrogen#605
- test: add RSC, SSR and streaming e2e by @frandiox in Shopify/hydrogen#598
- test: fix wrong import path by @frandiox in Shopify/hydrogen#609
- feat: simplify Helmet usage and make it compatible with RSC by @frandiox in Shopify/hydrogen#596
- Add Shop Context Back by @blittle in Shopify/hydrogen#573
- Fix header shift with cart opened by @Francismori7 in Shopify/hydrogen#600
- [Hydrogen docs]: Updates to SEO support by @mcvinci in Shopify/hydrogen#606
- [Hydrogen docs]: Update guidance for
ShopifyProvider
component by @mcvinci in Shopify/hydrogen#607 - dx [breaking change]: Remove render props (function-as-a-child) pattern from Metafield by @frehner in Shopify/hydrogen#613
- [Hydrogen docs]: Minor updates by @mcvinci in Shopify/hydrogen#615
- [Hydrogen docs]: Remove reference link by @mcvinci in Shopify/hydrogen#616
- test: unify e2e tests and add tests for Node production by @frandiox in Shopify/hydrogen#608
- Current url by @michenly in Shopify/hydrogen#614
- Search fix by @michenly in Shopify/hydrogen#623
- fix: rename Helmet to be a client component by @frandiox in Shopify/hydrogen#618
- feat: use RSC when rendering for bots by @frandiox in Shopify/hydrogen#619
- [Hydrogen docs]: Update
useUrl
hook docs by @mcvinci in Shopify/hydrogen#625 - feat: added querying for seo collection by @michenly in Shopify/hydrogen#624
- [Hydrogen docs]: Improving sign-posting to API routes and third-party data source content by @mcvinci in Shopify/hydrogen#632
- chore: fix Seo component noisy tests by @cartogram in Shopify/hydrogen#630
- Clear browser fetch cache by @wizardlyhel in Shopify/hydrogen#591
- feat: update favicon in snow-devil template by @cartogram in Shopify/hydrogen#622
- refactor: use featureImage instead of images(first:1) on product query by @michenly in Shopify/hydrogen#637
- [Hydrogen docs]: Update
log
utility docs by @mcvinci in Shopify/hydrogen#641 - fix: lock API version to 2022-01 for up coming release by @michenly in Shopify/hydrogen#645
- fix: make entry point files configurable by @frandiox in Shopify/hydrogen#626
- chore: upgrade Vite to 2.8.0 by @frandiox in Shopify/hydrogen#414
- Avoid using
any
in some of the mini-oxygen types by @maxshirshin in https://github.com/Shopify/hydrogen/pull/639 - [Hydrogen docs]: Fix links to metafield types documentation by @mcvinci in Shopify/hydrogen#650
- @cartogram/unit price remove caf prop by @cartogram in Shopify/hydrogen#640
- [breaking change] feat: remove cart lines render prop by @cartogram in Shopify/hydrogen#638
- Sitemap Update by @michenly in Shopify/hydrogen#642
- chore: we needn't provide dev.yml because it's an internal tool by @jplhomer in Shopify/hydrogen#659
- fix: inconsistencies in prettier when generating docs by @cartogram in Shopify/hydrogen#652
- fix: flakey cli tests by @cartogram in Shopify/hydrogen#653
- Fix external video issues for rc (close #454) by @johncraigcole in Shopify/hydrogen#651
- fix: Shop Pay button now works with custom quantities by @frehner in Shopify/hydrogen#655
- feat: pass HYDROGEN_ASSET_BASE_URL into config to set base URL for compiled assets by @slester in Shopify/hydrogen#646
- fix: cannot redefine property error when updating client components by @frandiox in Shopify/hydrogen#648
- fix: avoid leaking useServerRequest logic to browser by @frandiox in Shopify/hydrogen#634
- feat: add more rules to robots.txt by @michenly in Shopify/hydrogen#604
- dx: remove Product and CartLine alias components by @frehner in Shopify/hydrogen#661
- feat: remove react router on the client by @blittle in Shopify/hydrogen#611
- feat: change
/react
RSC path to/__rsc
by @Aslemammad in Shopify/hydrogen#658 - chore: only publish to stackblitz on stable release by @jplhomer in Shopify/hydrogen#665
- Remove old fetch workaround by @jplhomer in Shopify/hydrogen#678
- fix: prevent client components from being cached in development by @jplhomer in Shopify/hydrogen#671
- feat: log cache control header for full and sub requests by @wizardlyhel in Shopify/hydrogen#472
- chore: remove 3s timeout warning that doesn't do anything by @jplhomer in Shopify/hydrogen#688
- refactor: renamed video prop fro ExternalVideo to data by @michenly in Shopify/hydrogen#672
- refactor: renamed metafield prop in to data by @michenly in Shopify/hydrogen#677
- refactor: rename video prop on
- refactor: renamed model prop in to data by @michenly in Shopify/hydrogen#676
- refactor: renamed product prop in to data by @michenly in Shopify/hydrogen#682
- refactor: renamed money prop on to data by @michenly in Shopify/hydrogen#680
- refactor: renamed image prop for to data by @michenly in Shopify/hydrogen#675
- refactor: renamed cart prop on to data by @michenly in Shopify/hydrogen#684
- docs: update production deployment by @frandiox in Shopify/hydrogen#581
- Footer date update by @rafaelstz in Shopify/hydrogen#683
- fix: pass nested image data field from media file to underly Image component by @cartogram in Shopify/hydrogen#692
- docs: add sitemap limitation by @michenly in Shopify/hydrogen#664
- Standardized caching options by @wizardlyhel in Shopify/hydrogen#629
- fix: fix 3d model viewer by @michenly in Shopify/hydrogen#694
- Use turbo for dev by @jplhomer in Shopify/hydrogen#383
- feat: remove handleEvent in favor of handleRequest by @frandiox in Shopify/hydrogen#635
- feat: [breaking-change] remove CartLineX components by @cartogram in Shopify/hydrogen#697
- feat: simplify entry points by @frandiox in Shopify/hydrogen#617
- deps: update react-helmet-async and replace our custome type with the… by @michenly in Shopify/hydrogen#696
- [Hydrogen docs]: Add back missing props and other minor fixes by @mcvinci in Shopify/hydrogen#701
- fix: update
image
error prop to usedata
by @cartogram in Shopify/hydrogen#704 - @cartogram/remove selected variant add to cart button by @cartogram in Shopify/hydrogen#685
- feat: [breaking change] remove SelectedVariantImage by @cartogram in Shopify/hydrogen#703
- docs: add migration guide by @michenly in Shopify/hydrogen#714
- [Hydrogen docs]: Augment information about SEO by @mcvinci in Shopify/hydrogen#707
- [Hydrogen docs]: Revisions to Hydrogen reference page index content by @mcvinci in Shopify/hydrogen#718
- dx: change useProduct return values in some situations by @frehner in Shopify/hydrogen#706
- fix: override turbo cache when running CI build by @jplhomer in Shopify/hydrogen#721
- feat: Hot Module Reloading (HMR) E2e tests by @cartogram in Shopify/hydrogen#647
- Refactor test-utilities for Cart components by @cartogram in Shopify/hydrogen#725
- Rename
<Helmet>
component to<Head>
by @mcvinci in Shopify/hydrogen#722 - fix: backticks in RSC hydration by @frandiox in Shopify/hydrogen#727
- Move platform entry points to the framework by @frandiox in Shopify/hydrogen#710
- test: fix flaky tests for HMR by @frandiox in Shopify/hydrogen#735
- feat: enable early hydration when streaming by @frandiox in Shopify/hydrogen#736
- feat(rc): add variantId prop to ProductMetafield component by @cartogram in Shopify/hydrogen#730
- docs: add headers to CHANGELOG by @michenly in Shopify/hydrogen#737
- chore: skip changelog updates on prereleases by @jplhomer in Shopify/hydrogen#740
- [breaking change] remove SelectedVariantMetafield component by @cartogram in Shopify/hydrogen#733
- fix: add to cart tests by @cartogram in Shopify/hydrogen#738
- [breaking change] remove SelectedVariantBuyNowButton component by @cartogram in Shopify/hydrogen#732
- [breaking change] remove SelectedVariantShopPayButton component by @cartogram in Shopify/hydrogen#731
- Remove SelectVariantPrice component by @cartogram in Shopify/hydrogen#726
- [breaking change] SelectedVariantUnitPrice component by @cartogram in Shopify/hydrogen#728
- [Hydrogen docs]: Adding missing props to
ProductPrice
andProductMetafield
by @mcvinci in Shopify/hydrogen#742 - Fix cart client product links close (#711) by @johncraigcole in Shopify/hydrogen#713
- feat: Log query timing with suspense waterfall detection by @wizardlyhel in Shopify/hydrogen#699
- feat: Preload queries by @wizardlyhel in Shopify/hydrogen#700
- chore: add file to NPM releases by @frandiox in Shopify/hydrogen#748
New Contributors
- @tjoyal made their first contribution in Shopify/hydrogen#572
- @johncraigcole made their first contribution in Shopify/hydrogen#651
- @slester made their first contribution in Shopify/hydrogen#646
Full Changelog: Shopify/hydrogen@v0.10.1...v0.11.0