Releases: Sitecore/jss
Releases · Sitecore/jss
22.12.1
22.12.0
22.12.0
🎉 New Features & Improvements
- Migrate ESLint to v9 and flat config (#2186)(#2187)
- Add AGENTS.md and CLAUDE.md for AI coding assistant guidance (#2183)
🐛 Bug Fixes
[sitecore-jss-nextjs]Fix server transfer redirects (#2173)[sitecore-jss-nextjs]PreservebasePathwhen doing redirects in redirects-middleware (#2178) (#2181)
🛠 Breaking Changes
[Next.js]Upgrade to Next.js 16 (#2177)(#2179)- Upgrade to Node.js 24 (#2176)
[sitecore-jss-react]Placeholder suspense causes longer JavaScript Scripting execution time (#2185)- The default value of
disableSuspenseproperty is set totrueto avoid forcing Suspense usage across all components which could negatively impact performance metrics. Suspense can now be enabled explicitly when needed.
- The default value of
22.11.0
22.10.0
This release brings some smaller QoL changes for Next JS users (with little maintenance), and some larger QoL changes for Angular users (with, admittedly, hefty but necessary maintenance). Check the full details below.
🎉 New Features & Improvements
[Next.js]Support component-level data fetching in 404/500 pages (#2140)
🐛 Bug Fixes
[sitecore-jss-nextjs]Preserve default locale in external absolute urls (#2142)[React]Custom properties are not applied to empty field in editing metadata mode (#2141)[sitecore-jss-nextjs]Add regex variable substitution for absolute and external URL redirects. (#2159)[sitecore-jss-react]Disable React Suspense in the Placeholder component for Editing. (#2161)
🛠 Breaking Changes
21.11.0
🛠 Breaking Changes
[angular][sitecore-jss-angular]Upgrade to Angular v20 (#2162) (#2169):- Components adjusted to be standalone
- Update
apollo-angularto version 11 to be compatible with Angular v20 compatibility - Replace the deprecated
ngIf,ngFordirective usage with@ifand@for - Update the inject logic for DI
- NodeJS version must be updated to v20
- Typescript version updated to v 5.8.0
21.10.1
21.10.1
🐛 Bug Fixes
[sitecore-jss-nextjs] Prevent infinite redirect loops and prioritize locale-specific rules in the redirects middleware (#2158):
- Enhanced RedirectsMiddleware extensibility by introducing the new
getRedirectsmethod. - Included multiple improvements and refactoring carried over from JSS 22
22.9.1
22.9.1
🎉 New Features & Improvements
[Next.js]Support component-level data fetching in 404/500 pages (#2140)- Check the updated 404/505 pages implementation in 22.9.1 sample app in order to utilize this feature.
🐛 Bug Fixes
22.9.0
22.9.0
🐛 Bug Fixes
[Angular]Application fails with "TypeError: Cannot read properties of undefined (reading 'tap')" (#2134)[sitecore-jss-nextjs]Ensure Redirect Middleware handles case-insensitive path matching to prevent missed redirects due to casing differences (#2114)[sitecore-jss-nextjs]Fix redirect regex processing to prevent over-escaping of question marks in regex patterns (#2119)
🎉 New Features & Improvements
[sitecore-jss-nextjs]Ensure displayName paths are properly UTF-8 encoded. (#2121)[sitecore-jss-react]Enhanced the cache buster format to hh-dd-mm-yyyy (#2135)
🛠 Breaking Changes
22.8.0
22.8.0
🎉 New Features & Improvements
[sitecore-jss-nextjs]Improved RedirectsMiddleware extensibility with newgetRedirectsmethod (#2099)[sitecore-jss-nextjs]Improved PersonalizeMiddleware for better extensibility (#2098):- Added
processPersonalizationRequestmethod to be able to extend the personalize handler logic - Added
getPersonalizeInfomethod to be able to control and extendpersonalizeService.getPersonalizeInfobehavior
- Added
[nextjs][sitecore-jss-nextjs]Support for Component Library in XM Cloud (#1987)(#2000)(#2002)(#2005)(#2024)(#2053)(#2059)(#2064)(#2068)(#2087)(#2091)(#2101)
🐛 Bug Fixes
[sitecore-jss]Fix forwarding of Set-Cookie headers to prevent form submissions from failing due to missing verification token(__RequestVerificationToken) (#2112)
Chores
[sitecore-jss-react][nextjs-xmcloud]FEAAS dependencies updated (#2113)
22.7.0
22.7.0
🎉 New Features & Improvements
[templates/NextJs][templates/NextJs-Styleguide][templates/NextJs-Styleguide-Tracking]Remove graphql-let and graphql code generation functionality from NextJs starter applications. One of the major reasons for the decision isgraphql-letis not maintained anymore and was introducing severeal critical security vulnerabilities. (#2100)
🐛 Bug Fixes
[sitecore-jss-react]Add an optionaldisableSuspenseflag to the Placeholder component to prevent error boundaries from rendering Suspense which helps contain errors for components. This can help avoid hydration issues in connected mode. (#2081)(#2085)[templates/NextJs-Styleguide][templates/NextJs-Styleguide-Tracking]Bug fixes in Styleguide-Layout-Tabs-Tab, Styleguide-Layout-Tabs, Styleguide-Tracking components (#2100)[sitecore-jss-proxy]Fix build failure of XMCloud Proxy application when using PNPM (#2106)[sitecore-jss-nextjs]Prevent false prefetch detection for mobile navigation in middlewares. (#2102)[sitecore-jss-nextjs]AddCache-Control: no-store, no-cache, must-revalidateto personalize middleware to ensure personalized responses are not served from prefetch cache and proper personalization was applied during client side navigation. (#2105)[sitecore-jss-nextjs]Improve device detection and prevent false prefetch handling in Personalize middleware. (#2102) (#2107)
🛠 Breaking Changes
[Next.js][React]:[sitecore-jss][sitecore-jss-react][sitecore-jss-nextjs][sitecore-jss-react-forms][create-sitecore-jss]Upgrade React to version 19 and Nextjs to version 15 (#2078)(#2084)(#2090) (#2093) (#2096):- upgrade React and Nextjs dependencies for the new major versions
- with React 19, JSX is in the 'react' namespace and therefore 'react' needs to be imported befoore using JSX. All OOTB react and nextjs components have been updated
react-test-rendererhas been deprecated in react 19. additionalyenzymeis not supported anymore so all unit tests have been migrated to use@testing-library/react`propTypeshave been deprecated by react and have been removed from the solution- in NextJs 15 the
geoandipproperties onNextRequesthave been removed. To account for this@sitecore-cloudsdkdependencies have been upgraded to 0.5.1, which does not include breaking changes, however you will have to upgrade your cloudsdk dependencies to meet peer dependencies requirements - remove 'react' dependency from nextconfig webpack externals in monorepo next config plugin as it is not needed anymore.
- PersonalizeMiddleware handler now accepts PersonalizeOptions, that can be used to provide geolocation data from application level
- upgrade
eslint-plugin-reactto latest
[Angular]:[sitecore-jss-proxy][sitecore-jss-angular]@sitecore-cloudsdkdependencies have been upgraded to 0.5.1 (#2060)(#2078)- This upgrade doesn't introduce any breaking changes, however you will have to upgrade your cloudsdk dependencies to meet peer dependencies requirements