releases.shpreview

v4.20.0

$npx -y @buildinternet/releases show rel_Dv03PVnvSJ2dpBvw37Gq9

Sanity Studio v4.20.0

This release includes various improvements and bug fixes.

For the complete changelog with all details, please visit: www.sanity.io/changelog/05bddfa9-2297-4dbb-8cf2-e242ff368e49

Install or upgrade Sanity Studio

To upgrade to this version, run:

npm install sanity@latest

To initiate a new Sanity Studio project or learn more about upgrading, please refer to our comprehensive guide on Installing and Upgrading Sanity Studio.

📓 Full changelog

AuthorMessageCommit
renovate[bot]chore(deps): update dependency vite to v7.2.4 (#11254)39ac2cf2ac
renovate[bot]fix(deps): Update CodeMirror (#11256)6d0897f2bd
squiggler[bot]chore(deps): dedupe pnpm-lock.yaml (#11261)57fe722716
renovate[bot]chore(deps): update dependency turbo to ^2.6.1 (#11253)422da1d7fe
Pedro Bonaminfix(core): date time input fixes (#11233)84418b410a
Pedro Bonaminchore(core): update confirm delete dialog to include versions list (#11264)705c4b7822
Cody Olsenchore(pnpm): add trustPolicy: no-downgrade (#11267)98f4dc5c07
squiggler[bot]chore(tests): generate dts tests 🤖 ✨ (#11268)6296fe2773
Cody Olsenchore: widen @reduxjs/toolkit trust policy range (#11274)4fe55a3663
Cody Olsenrefactor: remove CJS (#11021)6bb0c4fdc8
squiggler[bot]chore(deps): dedupe pnpm-lock.yaml (#11275)f6c26b3ad2
Copilotchore: fix failure in release-next task (#11278)b077cad195
Cody Olsenfix: ensure module server uploads .mjs files (#11281)2be3548d46
renovate[bot]fix(deps): Update portabletext (#11270)bf4bf3b130
renovate[bot]chore(deps): update dependency @sanity/client to v7.13.1 (#11282)f62421e0dc
renovate[bot]fix(deps): update dependency @sanity/client to ^7.13.1 (#11283)b217ecb636
renovate[bot]chore(deps): update amannn/action-semantic-pull-request digest to e32d7e6 (#11286)50317d2a67
renovate[bot]chore(deps): update peter-evans/create-pull-request digest to 84ae59a (#11287)2452f89da6
squiggler[bot]chore(deps): dedupe pnpm-lock.yaml (#11284)564b36c876
Cody Olsenchore: use tsgo for type checking ⚡️ (#11292)b38f469e66
renovate[bot]chore(deps): update dependency @lezer/highlight to ^1.2.3 (#11289)253bd29e0f
renovate[bot]chore(deps): update dependency @sanity/runtime-cli to ^11.1.4 (#11291)21546e9d81
renovate[bot]chore(deps): update dependency @rollup/plugin-node-resolve to ^16.0.3 (#11290)f1360847a7
renovate[bot]chore(deps): update dependency @google-cloud/storage to ^7.17.3 (#11288)4b7c26f768
Cody Olsenchore: unblock #11273 (#11296)966e16ea3c
renovate[bot]chore(deps): update dependency @sanity/client to v7.13.1 (#11297)18957f8a55
squiggler[bot]chore(deps): dedupe pnpm-lock.yaml (#11300)0ff9bbd1de
renovate[bot]chore(deps): update dependency @sanity/client to ^7.13.1 (#11301)b4a913523e
renovate[bot]chore(deps): update dependency @sanity/ui to ^3.1.11 (#11303)85645a354e
Cody Olsenchore: fix dev command on monorepo (#11304)fae72a637c
Cody Olsenfix: make sure require calls comes from createRequire (#11306)0ae1f8b2d2
renovate[bot]chore(deps): update dependency styled-components to ^6.1.19 (#11307)36c2d5e1d7
renovate[bot]chore(deps): update dependency @sanity/pkg-utils to ^9.1.5 (#11298)a9b31ecbcc
squiggler[bot]chore(deps): dedupe pnpm-lock.yaml (#11319)ab6624e3a9
renovate[bot]chore(deps): update pnpm to v10.24.0 (#11320)380e5037d7
Cody Olsenfix: concat previewUrl and targetOrigin correctly (#11322)a18d3edabf
renovate[bot]chore(deps): update dependency @sanity/ui-workshop to ^3.4.0 (#11323)6702ec1fec
renovate[bot]chore(deps): update dependency @sanity/pkg-utils to ^9.2.0 (#11324)91122038bb
Copilotchore(deps): update date-fns to v4 and migrate to @date-fns/tz (#11295)de835c6b5d
Magnus Holmfeat(cli): add command for visualizing schema bloat721e6d2b96
Pedro Bonaminfix(core): set correct focus path for assets inputs in images (#11317)f1182f50e7
Magnus Holmfeat(schema): cache generated field objects8efdc2b31f
renovate[bot]chore(deps): update dependency @vitejs/plugin-react to ^4.7.0 (#11325)334e58d108
Jordan Lawrencefeat: delete scheduled drafts allows for copy back to draft when appropriate (#11143)321074904b
Magnus Holmrefactor(schema): remove unused options to DescriptorConverter (#11239)eee6ecea59
renovate[bot]chore(deps): update dependency form-data to ^4.0.5 (#11326)a227327e0f
renovate[bot]chore(deps): update dependency vite to ^7.2.4 (#11327)7b2e4c1fc6
renovate[bot]chore(deps): update linters (#11328)046a0c20c7
renovate[bot]fix(deps): Update portabletext (#11329)ab154959c7
squiggler[bot]chore(deps): dedupe pnpm-lock.yaml (#11331)bbfad65588
Cody Olsenchore(lint): ban commonjs syntax (#11318)b1e2ca2c27
renovate[bot]chore(deps): update dependency @vitejs/plugin-react to v5 (#11332)eff47b5fbf
Pedro Bonaminchore(core): improve release status message for the Published status (#11293)173fe64689
Pedro Bonaminchore(core): set unpublish as the primary action for published documents (#11308)787d09d8f3
Cody Olsenfix: allow createGlobalStyle to work with auto updating studios (#11313)c964ffecf1
Jordan Lawrencefix: validate published document when it is displayed (#11130)adf299b1d0
Cody Olsenchore: test styled-components fork requiring react 18 (#9486)8058d7abe9
renovate[bot]chore(deps): update dependency oxlint-tsgolint to v0.8.3 (#11334)ea00a73685
Jordan Lawrencefix: add dialog for content releases misconfiguration with support contact option (#11276)a43f8e085e
Per-Kristian Nordnesfix(core): only validate .media validation markers (#11311)f8643c1489
Rupert Dunkchore(deps): update dependency @sanity/image-url to ^2.0.1 (#11315)511b7d8f12
renovate[bot]fix(deps): Update portabletext (#11338)7ee38ba2b5
squiggler[bot]chore(tests): generate dts tests 🤖 ✨ (#11339)d2f5821430
renovate[bot]chore(deps): update dependency prettier to ^3.7.1 (#11340)9cb3402ab6
squiggler[bot]chore(lint): fix linter issues 🤖 ✨ (#11344)7f015f4af7
squiggler[bot]chore(deps): dedupe pnpm-lock.yaml (#11343)f7d62c602b
renovate[bot]chore(deps): update dependency @sanity/pkg-utils to ^9.2.1 (#11342)2c84c31f7c
squiggler[bot]chore(deps): dedupe pnpm-lock.yaml (#11345)21f4253361
Pedro Bonaminfix(core): pte inline comments respect __internal_comments disabled (#11341)0f566b5c99
Cody Olsenchore: add tsgo to extensions list (#11348)147c302ab8
Magnus Holmfeat(schema): de-dupe re-used fields in the descriptorb287558417
Magnus Holmrefactor(descriptors): make descriptor converter async7c1fc4d9d6
renovate[bot]chore(deps): update dependency @typescript/native-preview to v7.0.0-dev.20251128.1 (#11351)6647a273e5
Magnus Holmfeat(descriptors): minimize blocking the UI2826615efb
Pedro Bonaminchore(core): display comments error if present (#11350)ec4193dfb6
Cody Olsenfix: ensure schema errors are caught (#11349)30b67b5fa2
renovate[bot]chore(deps): update react monorepo (#11269)d40ddf5ff5
renovate[bot]chore(deps): update lerna-lite monorepo to ^4.9.4 (#11352)0a14c18964
squiggler[bot]chore(deps): dedupe pnpm-lock.yaml (#11356)6d9373770f
renovate[bot]chore(deps): update dependency prettier-plugin-packagejson to ^2.5.20 (#11355)deac1f58f9
Pedro Bonaminfix(core): use toolTitle for document.title if present (#11285)c7967d8ed5
renovate[bot]chore(deps): update dependency @sanity/pkg-utils to ^9.2.2 (#11359)82ce9fb32b
renovate[bot]chore(deps): update oxlint to v1.31.0 (#11357)cae0a693be
squiggler[bot]chore(deps): dedupe pnpm-lock.yaml (#11360)5c58f70d40
Cody Olsenfix: remove ServerStyleSheet usage (#10757)76028e1d19
renovate[bot]chore(deps): update dependency prettier to ^3.7.2 (#11354)b194034aa2
Bjørge Næssfix(deps): mark support for react < 19.2 and @sanity/ui < 3 as deprecated (#11238)8cd0a7c7a0
Per-Kristian Nordnesfix(core): fix props function delcaration (#11362)6b54783839
Pedro Bonaminfix(core): update server delete operation to include versions list (#11364)482f1d19cc
Bjørge Næssfix(sanity): allow editing documents in non-release bundles (#11312)dfa9dc1f70
Rupert Dunkfeat: support private assets (#11316)9a661ca445
Bjørge Næsschore: return single stack if outside of a release bundle (#11314)315e9f1d98
Pedro Bonaminfix(structure): replace delete action for discard in non published docs (#11363)ef607275cd

Fetched April 11, 2026