Studio

Compare document versions

Toggle inline changes in Studio UI and new function examples

v4.11.0

✨ Highlights

Toggle visibility of inline changes in Studio

UI showing 'Inline changes' selected in a dropdown menu.

Users can use the new "Inline changes" action to toggle inline changes on and off in Studio. When inline changes are switched on, supported field types will render an inline diff reflecting how their value has changed from the document's upstream version.

In the side-by-side version comparison view, inline changes are always visible.

This feature is currently supported by string input fields, with Portable Text field support arriving shortly.

If you've previously enabled advancedVersionControl in your sanity.config.ts, you can keep it enabled to opt-in to future version control functionality that is currently in development.

Custom component considerations

Developers who wish to support rendering of inline changes in their custom input components can refer to the new displayInlineChanges boolean input prop. This input prop will be true when the input component is rendered in a context that has inline changes switched on.

New Sanity Function example for content tagging and product-mapping

We've added a new advanced document function pattern thatautomatically maps and maintains product relationships throughout your content. It identifies product references, validates they exist, and keeps mappings current as your catalog changes—ensuring your content always features valid, up-to-date products.

How to use it:

  • Install using npx sanity blueprints add function --example product-mapping.
  • Add required schema types (productMap and colorVariant) to your project.
  • Configure Shopify products with tags starting with sanity-parent- or sanity-color-.
  • Function automatically processes products synced through Sanity Connect.

See more on the exchange.

🐛 Notable bugfixes

  • Fixes an issue in where users were shown as unauthorized in comments created inside tasks.
  • Fixes an issue where viewing a published document would wrongly show the draft document's title.
  • Fixes issue where a Date picker with a timezone not of the local time would mismatch the date that is picked when opening the Calendar to change the date.
  • Fixes issue where when the drafts are disabled for releases, running a release will default to the published perspective.

Interface improvements and bug fixes

v4.10.0

✨ Highlights

  • The document editor and comparison view now correctly reflects the upstream version of the document. Usually this is the published version, but for scheduled versions it is the version whose expected publication date immediately precedes it.
  • Moves the Manage Project and Invite members options from the user menu to the workspace dropdown.

🐛 Notable bugfixes

  • Fixes issue where tasks might show an incorrect date.
  • Version info dialog will now include a warning if an auto-update configuration issue is detected.

Custom actions for Content Releases, our first iteration of inline field diffs, bug fixes, and refinements

v4.7.0

✨ Highlights

Custom actions for Content Releases

Much like with custom document actions, it is now possible to define custom release actions - actions that are provided with release and version context and are available within the Studio UI on the releases tool list page, and in the release detail view.

A screenshot showing custom "Log Release Info" and "Conditional Action" actions for Content Releases in Studio.

Inline diffs for string fields

Studio now supports the display of diffs inside fields. When viewing a version of a document in the editor, or viewing versions side by side in the Compare versions view, fields will display inline annotations reflecting how their content has changed.

Screenshot of string field in Sanity Studio showing diff annotations from "Fall Collection 2025" to "Autumn Collection 2025".

This functionality is being implemented for string fields to begin with, and will roll out for more fields in the future. To switch this on for a workspace, set the root advancedVersionControl.enabled configuration option to true.

Note

Other features

  • The sanity undeploy command output has been improved for custom apps. It should now be clearer which application will be undeployed, as applications will be referenced by both their title and their ID.
  • The beta SelectedPerspective type has been deprecated in favour of the new, public, TargetPerspective type. These types represent the same values. If you're using SelectedPerspective in your code, please migrate to TargetPerspective.
  • Adds visual indication of how many documents within the release have been validated and how many are still to go.
  • Improves editing experience during intermittent connection loss.
  • Improves performance of the release detail view.
  • Adds validation overview for each release in the list of releases view.

🐛 Notable bugfixes

  • Fixes an issue where sometimes it was not possible to revert changes to a document.
  • Errors thrown during application development are now contained to the current viewport height, allowing verbose errors to be scrolled and read in full.
  • Fixes issues when restoring documents to revisions in version document and reverting document changes.
  • Fixes issue where reverting to old revision in a document version was not possible.
  • Adds missing revert to revision action when viewing version documents.
  • Fixes issue causing latest edited by user avatar to be outdated.
  • Fixes issue where a document that will be unpublished was showing as undefined in the document list.

Install or upgrade Sanity Studio

To initiate a new Sanity Studio project or upgrade an existing one, please refer to our comprehensive guide on Installing and Upgrading Sanity Studio.

If you are updating from a version earlier than 3.37.0, you should also check out this article to ensure your dependencies are up to date.