releases.shpreview
Sanity/Sanity Studio

Sanity Studio

$npx -y @buildinternet/releases show sanity-studio
Mon
Wed
Fri
AprMayJunJulAugSepOctNovDecJanFebMarApr
Less
More
Releases23Avg7/moVersionsv5.3.0 → v5.21.0
Nov 6, 2025

Sanity Studio v4.14.1

This release includes various improvements and bug fixes.

For the complete changelog with all details, please visit: www.sanity.io/changelog/7eb1964b-8915-4108-92a8-e3a330ace17c

Install or upgrade Sanity Studio

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.

📓 Full changelog

AuthorMessageCommit
Cody Olsenfix(deps): upgrade @portabletext/* deps (#11068)87b84ebed9
squiggler[bot]chore(deps): dedupe pnpm-lock.yaml (#11069)26bc655b52

Sanity Studio v4.14.0

This release includes various improvements and bug fixes.

For the complete changelog with all details, please visit: www.sanity.io/changelog/db456c72-959b-4dc0-8b80-f83fdc8b91ec

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](https://www.sanity.io/help

📓 Full changelog

AuthorMessageCommit
Bjørge Næsschore(dev): add example sdk app (#10992)26469612a3
Bjørge Næssfix(sanity): add missing translation string (#11001)46263b9b18
Pedro Bonaminfix(e2e-test): deleting the document crashes the test (#11002)33588e7d5a
Jordan Lawrencefeat: vision perspective scheduled drafts (#10999)4876ac2898
Pedro Bonaminchore(core): adds scheduledDrafts config option (off by default) (#10946)7d9e99a3ac
renovate[bot]fix(deps): Update portabletext (#10981)a27f27b87c
renovate[bot]chore(deps): update dependency @sanity/pkg-utils to v8.1.29 (#10891)eb57ecddfd
squiggler[bot]chore(deps): dedupe pnpm-lock.yaml (#11020)22f64f58f9
renovate[bot]chore(deps): update dependency @sanity/react-loader to v2 (#11015)48eb5d481e
Christian Hamburger Grøngaardfix: replace deprecated MarkdownPlugin684c799caa
Christian Hamburger Grøngaardchore: add @portabletext/toolkit to Test Studioeac8b7c0b5
Christian Hamburger Grøngaardfix: replace deprecated OneLinePlugin78dcb7266b
squiggler[bot]chore(tests): generate dts tests 🤖 ✨ (#11023)a394c02176
Simon MacDonaldfix(cli): add new function test flag (#11007)22bd071269
Pedro Bonaminchore(core): reverts adds scheduledDrafts config option (#11024)c682635084
squiggler[bot]chore(deps): dedupe pnpm-lock.yaml (#11022)36a1744998
renovate[bot]fix(deps): update dependency @sanity/client to ^7.12.1 (#11029)df2aa672f3
renovate[bot]fix(deps): Update portabletext to v2 (major) (#11028)786e057aea
renovate[bot]chore(deps): update dependency esbuild to v0.25.12 (#11032)67ed8a4694
renovate[bot]fix(deps): Update portabletext to v4 (major) (#11027)73dcb1d157
squiggler[bot]chore(deps): dedupe pnpm-lock.yaml (#11033)4992aef849
renovate[bot]chore(deps): update dev-non-major (#11017)ddde2586c4
squiggler[bot]chore(deps): dedupe pnpm-lock.yaml (#11035)91fac8b92a
renovate[bot]chore(deps): update linters (#11018)e715579b19
renovate[bot]fix(deps): update dependency @portabletext/react to v5 (#11034)486476a321
squiggler[bot]chore(deps): dedupe pnpm-lock.yaml (#11036)a56c4295a2
renovate[bot]fix(deps): Update portabletext (#11031)870a2f5371
renovate[bot]chore(deps): update react monorepo (#11019)6eb38d1c2e
squiggler[bot]chore(deps): dedupe pnpm-lock.yaml (#11037)bea0175b94
Christian Hamburger Grøngaardchore: replace deprecated DecoratorShortcutPlugin286b91a8c4
renovate[bot]fix(deps): update dependency @portabletext/plugin-character-pair-decorator to ^2.0.1 (#11039)22ac6c9394
Christian Hamburger Grøngaardfeat(core): allow disabling the built-in PTE Markdown shortcuts plugin1b9a227971
Cody Olsenfix(deps): add @babel/parser, an implicit dep of recast (#11042)bc08d286f2
squiggler[bot]chore(deps): dedupe pnpm-lock.yaml (#11043)267af831a1
Bjørge Næssfix(studio): pass asset type as context instead of argument (#11038)a105a57177
renovate[bot]fix(deps): Update portabletext (#11045)184152bdcb
Pedro Bonaminfix(core): close release dialog immediately after release creation (#11011)13a99580e8
Per-Kristian Nordnesfix(core): use state over ref in ImageInput (#11048)7fad9348ea
Per-Kristian Nordnesfeat(core): sticky drop message (#11010)d3be836176
Jordan Lawrencechore: scheduled draft copy tidy (#11056)5c3eb02155
Pedro Bonaminfix(e2e): increase timeout for beforeEach in references popover test (#11054)8190fa4e1a
Bjørge Næssfix(ci): change expected npm user (#11057)72cb37e136
Pedro Bonaminfeat(core): adds scheduledDrafts config option (on by default) (#11026)bb05c557c1
Bjørge Næsschore: add sanity as workspace dependency (#11060)d0061d0d27
squiggler[bot]chore(tests): generate dts tests 🤖 ✨ (#11062)7b2e11100a
Pedro Bonaminfix(core): scheduled publish action should set pane perspective, not global (#11058)29faf6e885
Kristoffer Brabrandtest(cli): skip warnings in test run (#11065)ce741e3e8f
squiggler[bot]chore(tests): generate dts tests 🤖 ✨ (#11063)73e8ab28f6
Jordan Lawrencefix: when releases disabled don't show create release options (#11064)7956975faa
Nov 3, 2025

This release includes various improvements and bug fixes.

For the complete changelog with all details, please visit: www.sanity.io/changelog/fa2a9f38-52cc-48bf-b76f-5649c3923d39

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
Bjørge Næssfix(efps): allow setting apihost via env (#10953)999c5ca9ac
Bjørge Næsschore: source .env vars from direnv (#10957)e2e08c44dc
Jordan Lawrencefix: add showTimeZone prop to DateTimeInput and ScheduleDraftDialog (#10950)343ab1a469
Bjørge Næsschore(ci): add vercel CLI to workspace dependencies (#10954)54edc5c247
squiggler[bot]chore(tests): generate dts tests 🤖 ✨ (#10960)883c1499b9
Bjørge Næsschore(efps): extract common config, rename and require env vars (#10956)94587e7458
Bjørge Næsschore(efps): build reference studio on push to main (#10962)d9b68568b5
Bjørge Næsschore(efps): use production url as reference (#10964)8c085d08ac
Bjørge Næsschore(efps): skip merge-reports step in main (#10965)d2bb4b4ebe
Bjørge Næsschore(efps): promote efps build to production in main (#10963)e44c0999d7
Bjørge Næssfix(efps): fix bad quote (#10967)1e0a7fd235
Jordan Lawrencefix: update Popover component to allow overriding animation behavior (#10966)1c21bf8408
Pedro Bonaminfix(core): use event timestamp in revision status line (#10961)b402b93a01
Bjørge Næsschore(efps): run vercel cli via pnpm (#10968)d1d339278e
Pedro Bonaminchore(core): replace get-random-values-esm for crypto.getRandomValues() (#10969)e29f7fa307
Jordan Lawrencefix: add translation for scheduled draft release title (#10970)0a5a713f2d
Bjørge Næsschore(efps): include token when promoting (#10971)7f6bac4d0c
renovate[bot]fix(deps): update dependency @sanity/presentation-comlink to v2 (#10898)53640e2e8f
renovate[bot]fix(deps): update dependency @sanity/comlink to v4 (#10897)e53949130f
renovate[bot]fix(deps): update dependency @sanity/client to ^7.12.0 (#10896)9f72cc6608
Bjørge Næsschore(design-studio): bring design studio back to a working state (#10925)c93b21b93f
renovate[bot]chore(deps): update dependency @sanity/ui to v3.1.11 (#10895)961c1227a7
Bjørge Næsschore(efps): improve deployment workflow (#10974)2814b28f3d
Pedro Bonaminfix(structure,presentation): no extraneous deps eslint warning (#10976)97da840f27
Per-Kristian Nordnesfeat(core): array item upload progress tracking (#10911)4ed970bfb1
renovate[bot]fix(deps): Update portabletext (#10977)3fe929d563
pedrobonaminfix(structure,presentation): no extraneous deps eslint warning0fd026892e
Bjørge Næsschore(eslint): clean up import/no-extraneous-dependencies configfce29ef735
Bjørge Næsschore: add missing package dependenciese45fa82aaf
Bjørge Næsschore(deps): catalog vite49aa5db556
Bjørge Næsschore: cleanup workspace dependencies459064143a
Bjørge Næssfix(deps): catalog vitest, jsdom add overridesa54467e2e5
Bjørge Næssrefactor(e2e): move e2e tests to e2e folder and create workspace package5d7ace1eec
Bjørge Næsschore(scripts): fix lint errors4c066b8f04
Bjørge Næsschore: remove eslint-config-studio usagea33db8d691
Bjørge Næsschore: silence oxlint warnings when running check:oxlint81a6b2f961
Bjørge Næsschore: remove publicHoistPatternbc53a6a9cf
Bjørge Næsschore(sanity): add prettier-plugin-packagejsonef9b25682d
Bjørge Næsschore(groq): use rolling workspace version for @repo/tsconfig (#10985)da7b5bd01c
Ragnar Rognstadfix(codegen): handle resolution of deeply nested imports using re-exports (#10982)16c45f56c1
Jordan Lawrencefix: resolving issues with nesting inside parent popover for delete and pub now actions (#10973)208da8889d
Bjørge Næssfix(ci): update slack GH action usage after major version bump (#10986)e40455427c
Taylor Besedafeat(cli/blueprints): doctor command (#10987)7485f28d37
Davey Kropffix(core): fixes issue where Sanity crashes when process is not defined (#10978)1f5b1aae27
Bjørge Næssfix(cli): fix error when running sanity undeploy for app (#10993)25874c04aa
Bjørge Næssfix(sanity): apply proper fix for missing process global (#10996)5fec59ea8f
Bjørge Næssfix: use www for sanity website urls (#10994)de66f58229
squiggler[bot]chore(tests): generate dts tests 🤖 ✨ (#10984)97a2e0cbcd
Jordan Lawrencefix: hide upsell when schedules exist (#10988)a97d44694d
Indrek Kärnerfeat: Add shopify domain to shopify template (#10983)6138bda229
Pedro Bonaminfix(structure): add document perspective provider for scheduled drafts (#10991)cf45a72102
Oct 28, 2025

Sanity Studio v4.12.0

This release includes various improvements and bug fixes.

For the complete changelog with all details, please visit: www.sanity.io/changelog/a1bee010-0d6a-45f1-b996-5a8e7ae8cee8

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
Kevin Greendocs(examples): add a new example for tracking stale product references inside of sanity documents (#10719)68ab91109c
RitaDiasfeat: add initial approach to a nested objects navigation dialog (#10759)c1be253009
squiggler[bot]chore(deps): dedupe pnpm-lock.yaml (#10893)e2b2714ace
Ashfeat(sanity): add compareValue to input component props9f6ee9072e
Ashfeat(sanity): support custom anchorPath and focusPath in computeRangeDecorations5f45705773
Ashrefactor(sanity): move reusable computeStringDiffRangeDecorations to shared locationee4b180795
Ashfeat(sanity): increase specificity of string diff segment styles53d7c15e91
Ashfeat(sanity): add inline diff support to Portable Text Editor75e44c2bde
RitaDiaschore: update telemetry (#10899)422e81639a
Ashfix(sanity): scrolling in expanded Portable Text Editor7519fdbfb6
Pedro Bonaminfix(core): single doc scheduled publishing updates (#10884)a68bab971d
Pedro Bonaminfix(core): close icon alignment in studio announcements card (#10909)e641a1ce33
Bjørge Næssfix(sanity): add more detailed version info for deployed test-studios (#10908)b2c8975b64
Sindre Gulsethfeat(media): allow setting aspect definition to public (#10900)810bf28acd
Pedro Bonaminchore(core): move releases tool to standalone plugin (#10892)f0137d17fb
renovate[bot]fix(deps): Update portabletext (#10902)f829425f5f
Bjørge Næsschore: remove sanity dependency for workspace root (#10913)c873573cbc
renovate[bot]chore(deps): update dev-non-major (#10889)1c8a4451e8
Bjørge Næsschore(sanity): remove unused code (#10914)a957f702cb
squiggler[bot]chore(tests): generate dts tests 🤖 ✨ (#10915)81507d851a
Bjørge Næsschore: deprecate theming support (#10916)921010a174
Pedro Bonaminfeat(core): adds single doc releases plugin. (#10890)2607d796a4
Fred Carlsenrefactor(sanity): validate that there is no callbacks in aspects (#10905)41ed5f0e6b
Jordan Lawrencefix: rescheduling scheduled draft updates metadata.intendedPublishAt too (#10919)66b18583c2
RitaDiasrefactor: add counter on the nested object header + url navigation within modals (#10800)dea7c4dfd2
Bjørge Næsschore(test-studio): remove unused locale imports (#10920)49c0ae5207
Bjørge Næsschore: cleanup various package scripts (#10921)320972a3b2
Bjørge Næsschore: replace lerna run with pnpm (#10924)404d2ed4fd
Bjørge Næsschore: add missing catalog specifiers for styled-components dependency (#10922)0d83de2434
Pedro Bonaminfix(core): use release limit instead of count for upsell dialog (#10929)14a614c495
Joshfix(auth): having no roles array on your user marks you as unauthorized (#10932)266eca8cbc
RitaDiasfeat: add config flag for nested object dialog (beta) (#10912)07a25d3d1b
squiggler[bot]chore(deps): dedupe pnpm-lock.yaml (#10930)b4b9226b43
Bjørge Næssfix(core): avoid workspace dependent hook CorsOriginError view (#10935)73e6173220
Ashfix(sanity): PTE error upon patch type unexpected by optimistic change handlere4531502cd
Pedro Bonaminfeat(core): adds View scheduled drafts menu action for scheduled drafts (#10923)2747339182
Ashfeat(sanity): skip unnecessary work when inline changes not switched on847673d8f0
Pedro Bonaminfeat(core): Scheduled drafts upsell (#10933)d0a8a7e6d2
Bjørge Næssfix(auth): include authenticated in roles check7fe20a1bd5
RitaDiasrefactor: keep modal path behind config (#10931)58bdc5ebcb
Pedro Bonaminfix(core): don't open release create dialog after clicking documentation link (#10944)92739bba60
RitaDiasfix: overflow for titles (#10943)2a7757c3f1
Pedro Bonaminchore(core): update schedules tool link tooltip (#10945)0eabc41cb5
Jordan Lawrencefeat: schedule dangling active cardinality one releases (#10941)c8e7f48b6a
Pedro Bonaminchore(core): upsell panels for releases overview (#10942)966e261e27
Pedro Bonaminfix(core): remove useRawPerspective in favor of perspective (#10947)1e9d639984
renovate[bot]fix(deps): update dependency @portabletext/editor to ^2.15.5 (#10927)d62524f3a3
Jordan Lawrencefeat: showing document validation errors inside scheduled drafts list (#10948)3d9ff3bfe2
Jordan Lawrencechore: update text for scheduled draft override banner to clarify publishing behavior (#10952)399b40a348
Fred Carlsenfix(sanity): handle processing video assets (#10949)abf39f760a
Oct 21, 2025

Sanity Studio v4.11.0

This release includes various improvements and bug fixes.

For the complete changelog with all details, please visit: www.sanity.io/changelog/b12d7a20-3867-48b0-8f18-7edf3a2c6367

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.

📓 Full changelog

AuthorMessageCommit
Cody Olsenchore: add dedupe preset to Renovate configuration (#10835)5d15d04fee
Kevin Greendocs(examples): add a product-mapping example that showcases common automated flows and enhance content tagging (#10657)2325ccaac5
Bjørge Næssfix(cli): pipe stderr when installing dependencies (#10839)704a357fc0
Bjørge Næsstest(cli): fix failing test case using pnpm for init (#10840)6b48fd6550
Bjørge Næsschore: move pnpm config from .npmrc to pnpm-workspace.yamla99305f28e
Bjørge Næsschore(dev): improve dev ex by running cli from source (#10831)0a9b9e4e22
Ashfeat(sanity): add UI control for toggling visibility of inline changes2f71623759
Ashfix(sanity): stale read-only styles rendered for StringInputPortableTextbe29073003
Ashrefactor(sanity): move upstream version selector to reusable function82ac5fa43c
Ashfix(sanity): do not compute inline diff using comparison value if there is no upstream version7a767271fe
Christian Grøngaardchore(renovate): group @portabletext/* deps PRs (#10848)b96e5eff6d
Christian Grøngaardchore(renovate): exclude @portabletext/* packages from the dev-non-major group (#10850)84ac9e5c18
Ashrefactor(sanity): move reusable string-diff-related code to shared locationef16a3e443
Bjørge Næsschore: remove deprecated vitest workspace file (#10845)8378474814
Jordan Lawrencefeat: scheduled drafts uses sanity.config property proper to disable (#10635)50a2e6e695
Pedro Bonaminfix(core): mention options in tasks comments showing as unauthorized (#10832)6c34de9c43
Jordan Lawrencechore: scheduled drafts uses sanity.config property proper to disable" (#10857)c2d86404b7
Jordan Lawrencefix: published document uses the draft document's title (#10827)6c81fa3986
squiggler[bot]chore(tests): generate dts tests 🤖 ✨ (#10856)2b024a3cb3
RitaDiasfix: issues where switching date that didn't mirror the local timezone would have issues with the hours / picked dates (#10830)e7289bdb83
RitaDiasfix: fix issue where publishing a release with drafts disabled would lead to the draft perspective (#10833)ad2adb7123
Ashrefactor(sanity): require complete SanityDocument for compareValue57bf9b61a4
renovate[bot]fix(deps): update dependency @sanity/client to ^7.12.0 (#10838)3250d26aa4
renovate[bot]chore(deps): update dependency @sanity/pkg-utils to v8.1.23 (#10822)d13ed24a4e
renovate[bot]chore(deps): update pnpm to v10.18.3 (#10842)804c3a57bc
renovate[bot]fix(deps): Update portabletext (#10851)0562b472be
renovate[bot]chore(deps): update dependency @sanity/ui to v3.1.10 (#10824)f0d3a312fd
renovate[bot]chore(deps): update dependency @sanity/visual-editing-csm to ^2.0.26 (#10867)30c532c9ef
renovate[bot]fix(deps): update dependency xstate to ^5.23.0 (#10872)41d75cacfb
squiggler[bot]chore(deps): dedupe pnpm-lock.yaml (#10868)7673873efa
renovate[bot]chore(deps): update dependency esbuild to v0.25.11 (#10869)a4f20eeda8
renovate[bot]chore(deps): update dev-non-major (#10873)d2067543d2
renovate[bot]chore(deps): update linters (#10874)a6d474095e
renovate[bot]chore(deps): update playwright monorepo to v1.56.1 (#10875)4371485ebd
renovate[bot]fix(deps): Update CodeMirror (#10876)2a973f2499
renovate[bot]fix(deps): update dependency groq-js to ^1.20.0 (#10852)ae0f0c78f8
renovate[bot]fix(deps): update dependency framer-motion to ^12.23.24 (#10877)fd13c36111
squiggler[bot]chore(deps): dedupe pnpm-lock.yaml (#10878)1389bc6523
renovate[bot]fix(deps): update dependency @sanity/comlink to ^3.1.1 (#10880)3ab3368407
renovate[bot]fix(deps): update dependency @sanity/presentation-comlink to ^1.0.33 (#10870)6e450a653a
renovate[bot]fix(deps): update dependency react-rx to ^4.2.2 (#10879)eae61c8975
renovate[bot]fix(deps): update dependency @portabletext/to-html to v3 (#10882)bbadd73136
renovate[bot]fix(deps): update dependency @sanity/insert-menu to v2.1.0 (#10881)43d06fe154
Bjørge Næsschore(deps): replace lerna with lerna-lite (#10886)299ce948a3
squiggler[bot]chore(deps): dedupe pnpm-lock.yaml (#10885)0709eff23a
squiggler[bot]chore(deps): dedupe pnpm-lock.yaml (#10888)d6cc9142e2
renovate[bot]fix(deps): update dependency @sanity/mutate to ^0.14.0 (#10837)0d5e3cb544
Bjørge Næsschore(ci): set up release automation for canary branch (#10887)51c5b55ab5
Oct 14, 2025

Sanity Studio v4.10.2

This release includes various improvements and bug fixes.

For the complete changelog with all details, please visit: www.sanity.io/changelog/3f6a120b-5565-4da9-9c4c-a4e9d3d4d2a7

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.

📓 Full changelog

AuthorMessageCommit
RitaDiasfix: add --prod when in main (#10787)39ad712d47
RitaDiasfix: fix issue related to the efps stuff (#10793)4231352b0f
renovate[bot]fix(deps): update dependency @portabletext/editor to ^2.13.4 (#10795)b89f08a367
Kevin Greendocs(examples): marketing function recipes - klaviyo create/send (#10594)364a1bc86d
renovate[bot]fix(deps): update dependency @portabletext/block-tools to ^3.5.9 (#10794)a16f5b98dc
renovate[bot]fix(deps): update dependency @sanity/client to ^7.11.2 (#10796)a06dd5bbea
renovate[bot]fix(deps): update dependency @sanity/client to ^7.12.0 (#10802)391127adf8
renovate[bot]fix(deps): update dependency @portabletext/block-tools to ^3.5.10 (#10807)3f5441bc1d
Jordan Lawrencefix: datetime custom types resolves field wrapper (#10809)f3ab8cd006
squiggler[bot]fix(deps): update React Compiler dependencies 🤖 ✨ (#10808)74e54453b1
renovate[bot]fix(deps): update dependency @portabletext/editor to ^2.13.7 (#10801)f97659787d
squiggler[bot]chore(deps): dedupe pnpm-lock.yaml (#10810)8d319ad253
Joshfix(cli): default dashboard url should use dev as the search param not url (#10813)9c34affda6
renovate[bot]chore(deps): update dependency typescript to v5.9.3 (#10790)c9f16c625a
renovate[bot]chore(deps): update linters (#10816)42d1aa5e89
renovate[bot]chore(deps): update playwright monorepo to v1.56.0 (#10818)645fcc3445
renovate[bot]chore(deps): update pnpm to v10.18.2 (#10819)8080097970
renovate[bot]chore(deps): update react monorepo (#10820)8f9103a29c
renovate[bot]chore(deps): update dependency next to ^15.5.4 (#10814)5a9b951386
Jordan Lawrencechore: update tooltip to clarify intended schedule dateTime (#10799)195e7c4be9
Jack Wilsonbuild: Add minimumReleaseAge (#10798)c5503c4a74
RitaDiaschore: add more exceptions to the workspace and renovate (#10828)95d60a8a6f
Sep 30, 2025

Sanity Studio v4.10.2

This release includes various improvements and bug fixes.

For the complete changelog with all details, please visit: www.sanity.io/changelog/d7eba126-1be6-4700-b6be-daad68c891b4

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
Jordan Lawrencefix: only reading server metadata when unfocused from input (#10749)a255a6d894
renovate[bot]chore(deps): update dependency turbo to ^2.5.8 (#10765)101fddae91
Bjørge Næssfix(core): avoid repeated requests in case of failing project requests (#10770)c03497f939
renovate[bot]chore(deps): update dependency tsx to ^4.20.6 (#10764)24029ec381
Bjørge Næssfix: delay teardown of get-org-id request (#10771)de40474d2e
renovate[bot]chore(deps): update playwright monorepo to v1.55.1 (#10767)345208a262
renovate[bot]chore(deps): update oxlint to v1.18.0 (#10769)45dcdaf0c5
renovate[bot]chore(deps): update dependency tsx to ^4.20.6 (#10763)be9729ad12
renovate[bot]chore(deps): update dependency @sanity/ui to v3.1.8 (#10772)797636dbb2
Bjørge Næssfix(cli): pass appType param when fetching existing SDK apps (#10775)b870af5f1c
renovate[bot]fix(deps): update dependency framer-motion to ^12.23.22 (#10768)268d44a750
renovate[bot]chore(deps): update dependency debug to ^4.4.3 (#10762)05cab2563c
Bjørge Næsschore(ci): improve pkg.pr.new workflow (#10776)84ba74dfc5
squiggler[bot]fix(deps): update React Compiler dependencies 🤖 ✨ (#10777)128ea47658
Bjørge Næssfix(cli): remove redundant curly brace in code example (#10781)792c250c14
renovate[bot]fix(deps): update dependency @portabletext/block-tools to ^3.5.8 (#10783)13ef5e3771
Bjørge Næsschore(ci): skip pkg.pr.new for main (#10782)1b54c810d7
renovate[bot]fix(deps): update dependency @portabletext/editor to ^2.13.3 (#10784)b6c49ab7bc
renovate[bot]chore(deps): update linters (#10766)06a3728724
Jordan Lawrencechore: turn off autoupdating on eFPS studio (#10785)e68780b0fd
RitaDiasfix: the main efps also needs to be deployed (#10786)8430ecf63d
Joshfix(structure): pass the same documentId to the favorite toggle as to history (#10779)fb9257f806
Bjørge Næssfix: use www for website urls (#10788)071e54ef0a
Sep 25, 2025

Sanity Studio v4.10.1

This release includes various improvements and bug fixes.

For the complete changelog with all details, please visit: www.sanity.io/changelog/91b4ee4c-5161-446f-bc42-4310810e1673

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
Ken Jonesdocs: update 'on' event formatting (#10740)3228e15dc9
RitaDiasrefactor: efps uses vercel (#10714)543ae1ddf9
Ashfix(sanity): use the correct colour for diffs in draft versions (#10738)1b86d66400
renovate[bot]chore(deps): update dependency @sanity/pkg-utils to v8.1.16 (#10744)eceae0bc96
RitaDiasrefactor: release validation loading (with text) only shows up on initial loading (#10734)db449dd613
renovate[bot]chore(deps): update dependency @sanity/ui to v3.1.6 (#10745)725064f3e9
renovate[bot]fix(deps): update dependency @portabletext/editor to ^2.13.1 (#10747)5edcd328ad
renovate[bot]fix(deps): update dependency @portabletext/editor to ^2.13.2 (#10752)962c5b0103
Ashfix(sanity): pasting Portable Text data into StringInputPortableText (#10748)0f14b5c4ef
Bjørge Næssfix(sanity): make new manage links staging aware (#10753)db183ef64a
renovate[bot]fix(deps): update dependency groq-js to ^1.19.0 (#10751)0e61cf345b
Bjørge Næssfix(core): wrap useReferringDocuments projection in curly braces (#10750)8e1537391d
renovate[bot]chore(deps): update dependency @sanity/ui to v3.1.7 (#10755)559300e274
renovate[bot]chore(deps): update dependency @sanity/pkg-utils to v8.1.17 (#10754)fcdecd5adb
RitaDiasfix: fix issue where single workspaces weren't opening the dropdown to show the new manage actions (#10746)29fdbfec13
Sep 23, 2025

Sanity Studio v4.10.0

This release includes various improvements and bug fixes.

For the complete changelog with all details, please visit: www.sanity.io/changelog/9da46546-395c-47e1-8734-b6df2dcf5cea

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]fix(deps): update dependency framer-motion to ^12.23.13 (#10651)f0c5ca1f09
renovate[bot]chore(deps): update pnpm to v10.16.1 (#10654)16bfc4419d
RitaDiastest: run efps for new staging project (#10647)d4af5fccf8
Ashfeat(sanity): export getDocumentIsInPerspective066182d252
Ashfeat(sanity): add strict version layeringcdb7d83d5e
Ashfeat(sanity): use strict version layering when opening document comparison viewc11fbe5e58
Ashrefactor: move StrictVersionLayeringOptions to @sanity/typese7d7b5bafa
Ashrefactor(sanity): move useDocumentIdStack and useFilteredReleases to coree542ee037c
Bjørge Næssfix(sanity): add a warning for version info dialog if appId is missing (#10659)dadb15c6bf
Jordan Lawrencerefactor: separate component for cardinality view picker and removing dup in the releases overview (#10650)d169cf9177
renovate[bot]fix(deps): update dependency @portabletext/block-tools to ^3.5.6 (#10662)816837593e
Ashfeat(sanity): use upstream version as comparison value in document editor (#10655)1b4ee38682
renovate[bot]chore(deps): update dependency esbuild to v0.25.10 (#10666)50b4ea6729
RitaDiasrefactor: move actions (manage project and add user) to the workspace + update UI (#10643)ad681d607d
Jordan Lawrencefix: scheduled pub action only shows when releases enabled (#10649)15416c35ce
squiggler[bot]chore(tests): generate dts tests 🤖 ✨ (#10660)783a0cff5c
RitaDiaschore: pint oxlint version (#10675)95eb5f3465
Pedro Bonaminfix(core): sanitize authorization header from copy error details (#10582)8feeacea5b
renovate[bot]fix(deps): update dependency @sanity/ui to ^3.1.3 (#10673)43d4d8e69c
Pedro Bonaminfix(structure): use origin for comments studio url (#10677)d1ebf15a1b
RitaDiasfeat: add the dev/efps for vercel deployment project (#10661)22d5689b74
squiggler[bot]chore(deps): dedupe pnpm-lock.yaml (#10678)2b540a5842
squiggler[bot]chore(deps): dedupe pnpm-lock.yaml (#10682)e5f4c0833d
RitaDiaschore: add build to dev/efps (#10681)ba99154279
renovate[bot]fix(deps): update dependency @portabletext/editor to ^2.12.1 (#10663)6387c2a984
Cody Olsenrefactor: remove @sanity/tsdoc and pnpm etl, upgrade @sanity/pkg-utils to v8 (#10683)b58d0dcc8d
renovate[bot]fix(deps): update dependency @sanity/client to ^7.11.2 (#10667)3d3ea0df4b
Bjørge Næssfix: ignore env files (#10684)6e091b18d1
Cody Olsenchore(deps): upgrade oxlint to v.1.16.0, fix preserve-caught-error (#10685)84d4a2855a
renovate[bot]chore(deps): update pnpm to v10.17.0 (#10689)3882e49b05
renovate[bot]fix(deps): update dependency framer-motion to ^12.23.16 (#10688)299c200720
renovate[bot]fix(deps): update dependency xstate to ^5.22.0 (#10690)1893e40a7c
renovate[bot]chore(deps): update dependency vite to ^7.1.6 (#10686)045fa6f3a9
renovate[bot]chore(deps): update linters (#10653)9c43d7dd4e
renovate[bot]chore(deps): update dev-non-major (#10687)f45d24e6d3
Jordan Lawrencetest(test-studio): decide test studio fields (#10665)71ab17c43c
renovate[bot]fix(deps): update dependency @sanity/ui to ^3.1.4 (#10691)cbab31b5d6
squiggler[bot]chore(tests): generate dts tests 🤖 ✨ (#10698)61fef6011d
renovate[bot]chore(deps): update dependency vite to ^7.1.7 (#10699)0646868da5
renovate[bot]chore(deps): update dependency @sanity/pkg-utils to v8.1.14 (#10702)45472f98ad
renovate[bot]fix(deps): update dependency framer-motion to ^12.23.18 (#10701)73f0dd6a1f
renovate[bot]chore(deps): update dependency vite to ^7.1.7 (#10700)bedf814c4e
renovate[bot]chore(deps): lock file maintenance (#10704)8c9f0e50cd
Cody Olsenfix: use generated react compiler typings (#10672)ac6c9a0955
RitaDiaschore: fix turbo.sjon (#10708)4040215673
Cody Olsenchore: fallback to run_id for efps concurrency (#10715)3812fa40fa
renovate[bot]fix(deps): update dependency @sanity/ui to ^3.1.5 (#10706)1387e57333
Ken Jonesfeat: update recipes from deprecations and add qroq functions (#10613)bd456d6814
Pedro Bonaminfix(core): tasks due dates showing incorrect value on timezones behind UTC (#10680)a033aad7d2
renovate[bot]fix(deps): update dependency @portabletext/editor to ^2.12.3 (#10716)97f5149309
squiggler[bot]chore(deps): update React Compiler dependencies 🤖 ✨ (#10711)350cff8214
renovate[bot]fix(deps): update dependency @portabletext/block-tools to ^3.5.7 (#10722)7eda14cbce
renovate[bot]chore(deps): update dependency @sanity/pkg-utils to v8.1.15 (#10726)717ccac99f
renovate[bot]chore(deps): update pnpm to v10.17.1 (#10727)9431bc6c69
Bjørge Næsschore: move @sanity/ui to pnpm catalog (#10724)8a422b4dd1
renovate[bot]fix(deps): update dependency framer-motion to ^12.23.19 (#10728)8e320db00c
renovate[bot]fix(deps): update dependency react-rx to ^4.2.1 (#10717)4d26a51ac3
squiggler[bot]chore(lint): fix linter issues 🤖 ✨ (#10731)13811df9c2
squiggler[bot]chore(deps): dedupe pnpm-lock.yaml (#10730)05ed6745fd
renovate[bot]chore(deps): update dependency @sanity/pkg-utils to v8.1.16 (#10735)0f21126064
renovate[bot]fix(deps): update dependency @portabletext/editor to ^2.13.0 (#10736)a964a2419f
renovate[bot]chore(deps): update dependency @sanity/ui to v3.1.6 (#10739)1a2c48b015
Sep 16, 2025

Sanity Studio v4.9.0

This release includes various improvements and bug fixes.

For the complete changelog with all details, please visit: www.sanity.io/changelog/93dafdba-90b0-4850-9fd6-eacfd378b5eb

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
Dave Sewellfeat(cli): Add delta flags to functions test command (#10607)166f7afc02
Simeon Griggsfeat: add "copy to clipboard" button to schema errors (#10575)635547bad3
renovate[bot]fix(deps): update dependency @portabletext/editor to ^2.8.4 (#10615)9c51cc5882
Bjørge Næsschore(dev): improve test-studio setup when running against staging (#10617)d883ca333f
renovate[bot]chore(deps): update dependency @sanity/asset-utils to ^2.3.0 (#10603)f98a974157
Jordan Lawrencefeat: schedule draft actions and releases tool (#10534)f8ec27adcd
Cody Olsenrefactor: use @sanity/client/csm utils in draftUtils (#10612)74253bb952
renovate[bot]fix(deps): update dependency @portabletext/editor to ^2.9.0 (#10621)63d13b8187
squiggler[bot]chore(tests): generate dts tests 🤖 ✨ (#10620)cd8373a0c0
renovate[bot]fix(deps): update dependency @sanity/ui to ^3.1.0 (#10627)1a708b5f58
RitaDiasfix(deps): upgrade "@sanity/ui" to "^3.1.0" (#10628)acd73f447b
renovate[bot]fix(deps): update dependency @portabletext/editor to ^2.9.1 (#10626)c62a30a6aa
squiggler[bot]chore(deps): dedupe pnpm-lock.yaml (#10629)a575e1bd80
Bjørge Næsschore(ci): rename release-stable to tag-stable to better reflect how it works (#10632)12ed1a0caf
Jordan Lawrencefeat(core): sapp 3054 scheduled draft doc actions (#10622)879a92eca9
Jordan Lawrencefeat: specific banner for archived (or published) scheduled drafts (#10630)f581e9b5c8
Bjørge Næsschore(ci): use 'release:latest' as label, make release PR draft (#10631)b913cbc731
Cody Olsenfeat(init): update next.js init template to next-sanity v11 (#10610)bd3d363861
Bjørge Næssrefactor(sanity): build for auto updates with appId based module server route (#10425)b914c01309
Jordan Lawrencefeat: can only create a single concurrent scheduled draft per document (#10624)7ca2749b7c
RitaDiasfix: popover issue when clicking different panes / references (#10618)c41a2b172c
Jordan Lawrencefeat: document perspective context (#10578)dce13e3b58
renovate[bot]chore(deps): update react monorepo (#10585)3c53673221
squiggler[bot]chore(tests): generate dts tests 🤖 ✨ (#10634)2c127c94f0
renovate[bot]chore(deps): update dependency lerna to ^8.2.4 (#10633)e4bff14220
RitaDiasfix: issue where escaping form link popover over in fullscreen would escape the fullscreen first (#10606)ff66b1e8f0
Bjørge Næssfix: make links to manage staging aware (#10638)74a48956ea
squiggler[bot]fix(deps): update React Compiler dependencies 🤖 ✨ (#10639)7ef8e2545d
Jordan Lawrencefeat: adding in support for empty state releases when there are scheduled drafts (#10625)3d1c2dd764
Bjørge Næssfix(core): make auto updating version check use appId (#10637)aab38114f3
Per-Kristian Nordneschore: upgrade @sanity/media-library-types (#10644)447771fc83
renovate[bot]fix(deps): update dependency @portabletext/block-tools to ^3.5.5 (#10614)7a64fdf0a1
Jordan Lawrencefeat: when scheduled drafts is enabled, showing banner in scheduled pub plugin (#10642)0014883238
renovate[bot]fix(deps): update dependency @portabletext/editor to ^2.9.2 (#10641)38d7116afb
Sep 10, 2025

Sanity Studio v4.8.1

This release includes various improvements and bug fixes.

For the complete changelog with all details, please visit: www.sanity.io/changelog/394715d3-9e49-4fdd-adeb-53de3b520868

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
RitaDiasfix: revert fix: popover issue when closing and clicking different panes (#10608)d0dba63e7b

Sanity Studio v4.8.0

This release includes various improvements and bug fixes.

For the complete changelog with all details, please visit: www.sanity.io/changelog/7b3091d5-c1b6-4fec-81b0-16b88f1474ea

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): lock file maintenance (#10586)b0f0c79715
renovate[bot]chore(deps): update dev-non-major (#10584)e63992ef09
renovate[bot]fix(deps): update dependency @sanity/preview-url-secret to ^2.1.15 (#10588)8269e81683
Bjørge Næssfix(cli): fix build error when using auto-updates with sdk apps (#10581)49bff6900d
Per-Kristian Nordnesfix: handle uploading assets already existing in the ML (#10495)e4d8e43425
RitaDiasrefactor: change useReleaseHistory to use getTransactionsLogs and limit to 1 and reverse to true (#10596)7db18e4b39
Cody Olsenchore(deps): fix vercel builds by bumping @sanity/pkg-utils (#10597)b556db2b2c
renovate[bot]fix(deps): update dependency @portabletext/editor to ^2.8.3 (#10570)63acb06646
RitaDiaschore: add validation to scheduled releases (#10595)912ad4ede4
renovate[bot]chore(deps): update dependency @sanity/visual-editing to v3.0.5 (#10599)430b4cff9e
renovate[bot]chore(deps): update dependency vite to ^7.1.5 (#10583)e326925738
renovate[bot]fix(deps): Update babel monorepo to ^7.28.4 (#10601)cd6611a87f
renovate[bot]chore(deps): update dependency @mux/mux-player-react to ^3.6.0 (#10602)0710ea3a6d
renovate[bot]chore(deps): update linters (#10605)c15879419e
renovate[bot]fix(deps): update dependency @sanity/client to ^7.11.1 (#10593)96d35461db
Ashfeat(sanity): compute node diffs lazily (#10600)6e048f2ac0
Sep 9, 2025

Sanity Studio v4.7.0

This release includes various improvements and bug fixes.

For the complete changelog with all details, please visit: www.sanity.io/changelog/5b62ace6-d0bf-44da-b862-fb17e04dfd2e

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
Jordan Lawrencefix: resolves revert change popover sometimes closing without bubbling click events (#10486)d3c3a941ab
squiggler[bot]chore(tests): generate dts tests 🤖 ✨ (#10511)7b8a635fe9
renovate[bot]chore(deps): update dependency vite to ^7.1.4 (#10500)387468990b
Cole Petersfeat(cli): Prevent GlobalErrorHandler from growing beyond viewport height (#10510)172d9a9501
renovate[bot]fix(deps): update dependency @portabletext/block-tools to ^3.5.2 (#10505)b20a49ef06
Cole Petersfeat(cli): Improve undeploy output for apps (#10516)f6809b4b33
Cole Petersfeat(cli): Add & update docstrings to AppConfig type (#10514)5be6ca438f
renovate[bot]fix(deps): update dependency @portabletext/editor to ^2.7.2 (#10506)7c4a1451cd
renovate[bot]chore(deps): update dependency @sanity/image-url to ^1.2.0 (#10508)4f61f1088c
renovate[bot]fix(deps): update dependency @sanity/client to ^7.11.0 (#10518)5cfeba6b5d
Cody Olsenrefactor: use RC3 of the React Compiler linter (#10513)327f776485
Cody Olsenchore(deps): upgrade @types/node to v24 using pnpm catalog (#10381)c15a2ef837
Cody Olsenfix: pass react-hooks/purity checks (#10517)9a53dd0677
Cody Olsenchore(ci): dts and export tests suites shouldn't be cached (#10525)653add9bb9
renovate[bot]chore(deps): update actions/setup-node action to v5 (#10526)590bd456f5
Ashfeat(sanity): graduate SelectedPerspective to public type TargetPerspective (#10300)d13666ce9e
RitaDiasrefactor: add initial indicator for the progress (#10471)3c91b82ba8
Jordan Lawrencefeat(core): sapp 2967 schedule publish drafts (#10392)e438808cb0
Jordan Lawrencefeat(core): custom release actions (#10286)28a774b271
squiggler[bot]chore(tests): generate dts tests 🤖 ✨ (#10533)2929747d05
Ashfix(sanity): ETL errors caused by inferring union types from constant arrays (#10509)2d499ca866
Bjørge Næssrefactor(core): rename reconnect => connectionChangeEvents (#10527)caaf7d381e
Bjørge Næssfix(core): preserve local document state during intermittent disconnects (#10528)89954ae04d
Fred Carlsenrefactor(sanity): use gdr instead of linking video assets (#10383)9eeb234e11
Pedro Bonaminfix: version document restore revision and revert changes actions (#10537)80a14f60e4
renovate[bot]fix(deps): update dependency @portabletext/block-tools to ^3.5.3 (#10535)a52feb11d5
Bjørge Næssfix(cli): warn if engine requirements not met (#10461)739e9135de
Dain Cilkefeat(descriptors): handle validations (#10457)bb7e750f36
Matthew Ritterfeat(limits): Document Limits Upsell (#10428)4ff929d9aa
Bjørge Næssfix: dedupe listener events (#10529)b55223456c
renovate[bot]fix(deps): update dependency @portabletext/editor to ^2.8.0 (#10536)e08eee00e2
squiggler[bot]chore(tests): generate dts tests 🤖 ✨ (#10539)1e0f9a48a2
Bjørge Næssrefactor(core): rename applicableChains to resolvedChains and add debug logging (#10530)d258631ca8
renovate[bot]fix(deps): update dependency @sanity/mutate to ^0.13.0 (#10468)0efa5b4a41
Fred Carlsenfix(sanity): use custom domain for video player (#10541)f404e2192b
renovate[bot]fix(deps): update dependency @sanity/ui to ^3.0.11 (#10538)aa025d4d98
Bjørge Næssrefactor(core): make sequentializeListenerEvents more robust (#10531)4f73b65e3e
renovate[bot]chore(deps): update dependency oxlint to ^1.14.0 (#10546)292fbb00a3
Bjørge Næssfix: log the correct error name (#10532)d22f8b3016
Cody Olsenfix: improve PortalProvider and PopoverContainer perf (#10549)04b209bbbf
renovate[bot]chore(deps): update linters (#10548)22c5ec2065
renovate[bot]fix(deps): Update dev-non-major (#10544)185530655c
renovate[bot]fix(deps): update dependency @sanity/insert-menu to v2.0.2 (#10554)3fd0a59fb2
renovate[bot]chore(deps): update dependency @sanity/visual-editing-csm to ^2.0.24 (#10553)226628061f
renovate[bot]fix(deps): update dependency @portabletext/editor to ^2.8.1 (#10555)3c9eb4aa4b
Pedro Bonaminchore(core): add workspace name to comments notification payload (#10551)cd68d28fb2
renovate[bot]fix(deps): update dependency @sanity/presentation-comlink to ^1.0.29 (#10556)fd5105c448
renovate[bot]chore(deps): update dependency @sanity/runtime-cli to ^10.5.1 (#10545)e56c3a448d
renovate[bot]fix(deps): Update CodeMirror (#10543)47a88bcca4
RitaDiasfix: issue where trying to revert revision would open two dialogs (#10559)efc6b14692
Fred Carlsenfix(sanity): use project host when fetching video playback info (#10560)9c12c97132
renovate[bot]fix(deps): update dependency @portabletext/editor to ^2.8.2 (#10563)d7be4ac250
renovate[bot]fix(deps): update dependency @sanity/ui to ^3.0.14 (#10557)8a1f41fad5
Pedro Bonaminfix(structure): always render history restore action if seeing revision (#10562)525e198b39
Dain Cilkefeat(descriptors): serialize i18n properties (#10540)d71f9d349f
Per-Kristian Nordnesfix(core): make sure empty strings aren't passed to the upload API (#10558)31fc081c5f
Pedro Bonaminchore(types): add dashboard notification payload type (#10552)4cdd8e6199
renovate[bot]chore(deps): update sanity monorepo (#10566)8dc30ac95a
RitaDiasfix: add caching to the useHistory in the releases + fix lastEditedByIssue (#10564)0e49e4c834
RitaDiasfix: issue where an unpublished documentwas howing up as undefined in the document list in a release detail (#10568)f58b8bbe4a
Ashrefactor(sanity): export findRelease internally9ca6196d42
Ashfix(diff): exclude undefined entries when wrapping object for diff36fb0661a4
Ashfeat(sanity): add diff props to input propse8733fb7cb
Ashrefactor(sanity): avoid potential React Compiler deoptimisation17c4c26ec7
renovate[bot]fix(deps): update dependency @portabletext/block-tools to ^3.5.4 (#10569)f80859bc17
RitaDiasfeat: add validation per release on the release overview + add caching (#10496)7e8da0308a
Dain Cilkefeat(descriptors): serialize orderings properties (#10550)e6442a96f0
Ashfeat(sanity): export focusRingBorderStylef499eee7f8
Ashfeat(sanity): export UpdateReadOnlyPluginfb5d670ed4
Ashfeat(sanity): add StringInputPortableText with inline diff supportc8b4569ed8
Ashfeat(test-studio): switch on advanced version control80cddca36b
squiggler[bot]chore(tests): generate dts tests 🤖 ✨ (#10571)0374fbb1ce
renovate[bot]fix(deps): update dependency groq-js to ^1.18.0 (#10576)176527ff1a
squiggler[bot]chore(tests): generate dts tests 🤖 ✨ (#10579)454f59f6e9
RitaDiasfix: popover issue when closing and clicking different panes (#10577)b30dbb17c0
Cody Olsenchore: use react 19 in all dev deps (#10152)50c761e91b
squiggler[bot]fix(deps): update React Compiler dependencies 🤖 ✨ (#10574)edac169f53
Sep 2, 2025

Sanity Studio v4.6.1

This release includes various improvements and bug fixes.

For the complete changelog with all details, please visit: www.sanity.io/changelog/1f68a86a-6d5b-4f2d-9c8e-bb894ed5917a

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]fix(deps): update dependency @portabletext/editor to ^2.6.4 (#10459)706124e852
Jon burbridgedocs(examples): add auto redirect function (#10280)6c82091892
Bjørge Næsschore(deps): update dependency typescript to v5.9.2 (#10463)b3d8cb384c
renovate[bot]fix(deps): update dependency @sanity/mutate to ^0.12.5 (#10433)d916a843c9
Jordan Lawrencefix: revert "fix(deps): update dependency @sanity/mutate to ^0.12.5" (#10467)3f67302dfe
Jordan Lawrencechore(ci): retry tests in ci (#10398)eb7523dee8
RitaDiastest: update unit tests for the releasesOverview to reduce flakiness (#10473)43411ab004
renovate[bot]fix(deps): update dependency @sanity/ui to ^3.0.8 (#10472)62e01d10e2
renovate[bot]fix(deps): update dependency @portabletext/editor to ^2.6.5 (#10474)39a9b88321
Cody Olsenfix(telemetry): include react version (#10480)a80689b2dd
Martin Jacobsenfix: corrects tense in auto-generated comment (#10409)2ec1d8212a
Rupert Dunkfix(presentation): always include origin in document resolver context (#10477)0b0710d370
RitaDiasfix: issue where the discard dialog preview was chosing a broken preview (#10475)26db2f506e
Taylor Besedachore(cli): telemetry event blueprints add --example (#10456)423dfd850b
Pedro Bonaminfix(core): resolve uploader should work even if direct uploads is not allowed (#10407)1f5791f4bb
Bjørge Næssfix(sanity): mark document as consistent when refetching from server (#10485)6a799165c8
renovate[bot]fix(deps): update dependency @portabletext/editor to ^2.6.7 (#10479)7ee3be7775
Kevin Greenchore(examples): update algolia to support update/delete events (#10469)cda7d5ecf7
Bjørge Næsschore(cli): remove unused action (#10462)2bd1baef55
Bjørge Næssfix(sanity): clear 'publishing' state when published revision change (#10484)3721812de6
renovate[bot]chore(deps): update dependency babel-plugin-react-compiler to v19.1.0-rc.3 (#10487)0a06710218
Jordan Lawrencefeat: add auto-retry workflow for failed jobs (#10466)498d40376f
Bjørge Næssfix(core): preserve desync deadline when new mutation events arrive (#10491)41c9baca3d
renovate[bot]chore(deps): update dev-non-major (#10488)51827b64dd
squiggler[bot]fix(deps): update React Compiler dependencies 🤖 ✨ (#10492)dd22e7dbc9
renovate[bot]fix(deps): update dependency react-rx to ^4.1.32 (#10493)af9eadd873
Jordan Lawrencefix: removing the document unpublish action from pseudo drafts (#10427)c1811adb9f
renovate[bot]fix(deps): update dependency @sanity/client to ^7.10.0 (#10465)62103ca0e3
Ashrefactor(sanity): move string input into directorydd5465aecf
Ashrefactor(sanity): move number input into directoryac6461c27a
renovate[bot]fix(deps): update dependency @portabletext/editor to ^2.6.9 (#10490)f7ac7e591b
renovate[bot]fix(deps): update dependency @portabletext/block-tools to ^3.5.1 (#10460)af3737dc50
renovate[bot]chore(deps): update dependency @portabletext/react to ^4.0.3 (#10497)7f191c0172
renovate[bot]chore(deps): update dependency @portabletext/react to ^4.0.3 (#10498)136c13cb39
renovate[bot]fix(deps): update dependency xstate to ^5.21.0 (#10502)da87107b8e
renovate[bot]fix(deps): update dependency @portabletext/editor to ^2.7.0 (#10503)cc00d316fd
renovate[bot]chore(deps): update dependency @portabletext/toolkit to ^3.0.1 (#10499)3ac010388d
renovate[bot]chore(deps): update pnpm to v10.15.1 (#10501)06e49d01e1
renovate[bot]fix(deps): update dependency @portabletext/editor to ^2.7.1 (#10504)5a35aafc84
Rupert Dunkdocs(presentation): improve tsdoc comments on types (#10507)316511407e
Aug 26, 2025

Sanity Studio v4.6.0

This release includes various improvements and bug fixes.

For the complete changelog with all details, please visit: www.sanity.io/changelog/0c948fdd-2d78-4b7c-a3fe-44e664e75671

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
Bjørge Næssfix: move 'create new' studio host option to the end (#10403)851e7db866
RitaDiasfix: fix scrolling issue inside of popover modals in PTE (#10401)c5a7d02ffc
renovate[bot]fix(deps): update dependency @portabletext/editor to ^2.4.0 (#10406)294a907efc
renovate[bot]fix(deps): update dependency @portabletext/block-tools to ^3.3.0 (#10405)0b9a8cedf4
Fil Majfeat: support new Function document change events (create, delete, update) and filters (includeDrafts and includeAllVersions) (#10413)1835683189
renovate[bot]fix(deps): update dependency @portabletext/block-tools to ^3.3.1 (#10410)f7affe2a11
renovate[bot]fix(deps): update dependency @sanity/client to ^7.9.0 (#10412)392f5dc710
renovate[bot]fix(deps): update dependency @portabletext/editor to ^2.4.3 (#10411)a739244e2b
Matthew Ritterfeat: Add Last Used Provider Badge (#10238)f2db433617
Christian Grøngaardfix(types): remove 'strike'/'strike-through' decorator confusion (#10416)f5340c84db
Cody Olsenchore: setup unsplash asset source, and workspace with repro (#10385)5ad66ddefd
renovate[bot]fix(deps): update dependency @portabletext/block-tools to ^3.3.2 (#10419)0df3a575b4
RitaDiasfix: stop throwing error when removing array item when validation pane is open (#10420)9cc4337915
Jordan Lawrencerefactor: updating type of release document to include cardinality (#10390)7a4e189e82
renovate[bot]fix(deps): update dependency @portabletext/block-tools to ^3.3.3 (#10421)f49cf61e71
renovate[bot]fix(deps): update dependency @portabletext/editor to ^2.6.3 (#10418)2f2f2eed8e
renovate[bot]chore(deps): update pnpm to v10.15.0 (#10442)35cc69455e
renovate[bot]chore(deps): update dev-non-major (#10439)7c7421ebf4
renovate[bot]chore(deps): update dependency @sanity/message-protocol to ^0.17.2 (#10438)cca2534bd6
renovate[bot]chore(deps): update dependency @portabletext/react to v4 (#10443)4b73b14ed4
Dain Cilkerefactor(schema): move schema Rule to schema package (#10426)f9820c2f2c
renovate[bot]chore(deps): update dependency @codemirror/language to ^6.11.3 (#10435)49d736a087
renovate[bot]chore(deps): update dependency @portabletext/toolkit to v3 (#10434)d3c3f4a2ef
renovate[bot]chore(deps): update playwright monorepo to v1.55.0 (#10441)b47ae64679
squiggler[bot]chore(tests): generate dts tests 🤖 ✨ (#10447)7ec4f876c6
renovate[bot]chore(deps): update linters (#10446)9aca87c8ea
Bjørge Næsschore(ci): write coverage report on PRs (#10451)5f0f1c99ce
Bjørge Næssrefactor(sanity): generalize import map generation (#10422)0002e2360d
Bjørge Næssfix: add env var for setting modules host (#10423)14eeabb9da
Knut Melværchore: specify codeowners for function examples (#10452)0fd1c472b7
renovate[bot]chore(deps): update react monorepo (#10448)8a6bdb27ae
renovate[bot]chore(deps): update dependency tsx to ^4.20.5 (#10444)a031f21d2c
Binoy Patelchore(cli): show media commands in CLI help (#10453)57513b7a80
renovate[bot]chore(deps): update dependency @sanity/runtime-cli to ^10.3.1 (#10450)3310bc57ba
renovate[bot]chore(deps): update dependency vite to ^7.1.3 (#10445)50a53fade2
Bjørge Næssfix(sanity): support new appid module url in version check (#10432)8e83fa1898
Simeon Griggsfeat: add 'format code' function recipe (#10417)bc95db955c
RitaDiasrefactor(core): move preview of documents in release detail to each row (#10295)2639e60cc1
renovate[bot]chore(deps): update dependency @sanity/blueprints to ^0.2.0 (#10449)78a5a24b53
Aug 19, 2025

Sanity Studio v4.5.0

This release includes various improvements and bug fixes.

For the complete changelog with all details, please visit: www.sanity.io/changelog/696fb6b6-c95e-4489-89e2-f40b97715c0a

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
Ashfeat(sanity): add advancedVersionControl.enabled configuration option (#10277)81bc5b1e73
renovate[bot]fix(deps): Update babel monorepo to ^7.28.3 (#10301)cb6718b8ef
renovate[bot]fix(deps): Update dev-non-major (#10302)3f1c7d147e
renovate[bot]chore(deps): update dependency @sanity/runtime-cli to ^10.1.3 (#10303)1d56f678f5
Ken Jonesdocs(examples): add mastodon and bluesky functions (#10117)ad24d8a11f
renovate[bot]chore(deps): update dependency @sanity/runtime-cli to ^10.1.4 (#10306)00b176c7d0
renovate[bot]chore(deps): update dependency @types/babel__traverse to ^7.28.0 (#10307)d8cdea0060
Sindre Gulsethfix(schema): mark image data as required, for typegen (#10285)af2ce7be07
renovate[bot]chore(deps): update dependency form-data to ^4.0.4 (#10309)39b6e6505a
Cody Olsenchore(renovate): ignore ESM workarounds (#10310)8f97f069ac
renovate[bot]chore(deps): update dependency @google-cloud/storage to ^7.16.0 (#10311)3ff42c606d
renovate[bot]chore(deps): update dependency @lezer/highlight to ^1.2.1 (#10312)031601404b
renovate[bot]chore(deps): update dependency @sanity/message-protocol to ^0.17.1 (#10313)6e4098adb8
renovate[bot]chore(deps): update dependency @sanity/sdk-react to ^0.0.3 (#10314)a0eecd88f5
renovate[bot]chore(deps): update dependency @types/archiver to ^6.0.3 (#10315)9336e102e3
renovate[bot]chore(deps): update dependency @types/cpx to ^1.5.5 (#10316)de3647eb48
renovate[bot]chore(deps): update dependency @types/raf to ^3.4.3 (#10317)13fe4cdfdc
renovate[bot]chore(deps): update dependency @types/semver-compare to ^1.0.3 (#10318)845ad4ab91
renovate[bot]chore(deps): update dependency @types/shallow-equals to ^1.0.3 (#10319)f92b86e0ae
renovate[bot]chore(deps): update dependency @types/tar-stream to ^3.1.4 (#10321)15f195f18c
renovate[bot]chore(deps): update dependency archiver to ^7.0.1 (#10322)d42d3500ac
renovate[bot]chore(deps): update dependency boxen to ^4.2.0 (#10323)4d65608a7a
renovate[bot]chore(deps): update dependency cac to ^6.7.14 (#10324)f380128d71
renovate[bot]chore(deps): update dependency chokidar to ^3.6.0 (#10325)09a2164d9c
renovate[bot]chore(deps): update dependency color2k to ^2.0.3 (#10327)b080b899c8
renovate[bot]chore(deps): update dependency console-table-printer to ^2.14.6 (#10328)ea0f1ace26
renovate[bot]chore(deps): update dependency conventional-changelog-conventionalcommits to ^7.0.2 (#10329)2fd5a8dd00
renovate[bot]chore(deps): update dependency decompress to ^4.2.1 (#10330)d7ed17305b
renovate[bot]chore(deps): update dependency deep-sort-object to ^1.0.2 (#10331)998cd285d8
renovate[bot]chore(deps): update dependency get-latest-version to ^5.1.0 (#10332)1e27ef0fe4
renovate[bot]chore(deps): update dependency import-fresh to ^3.3.1 (#10333)b15dd44354
renovate[bot]chore(deps): update dependency isomorphic-dompurify to ^2.26.0 (#10334)16766dbf61
renovate[bot]chore(deps): update dependency json-2-csv to ^5.5.9 (#10335)9760cbb68d
renovate[bot]chore(deps): update dependency minimist to ^1.2.8 (#10336)38cf3d686e
renovate[bot]chore(deps): update dependency module-alias to ^2.2.3 (#10337)380731e125
renovate[bot]chore(deps): update dependency object-inspect to ^1.13.4 (#10339)0c174afd43
Jordan Lawrencerefactor(core): adding internal feature symbol for single document releases (#10288)eac451e791
squiggler[bot]chore(tests): generate dts tests 🤖 ✨ (#10366)29c08ed550
renovate[bot]chore(deps): update dependency @types/speakingurl to ^13.0.6 (#10320)958b583ad8
renovate[bot]chore(deps): update dependency clean-stack to ^3.0.1 (#10326)de084a559a
renovate[bot]chore(deps): update dependency npm-run-all2 to ^6.2.6 (#10338)5225150918
renovate[bot]chore(deps): update dependency @types/jsdom to ^20.0.1 (#10340)bcff5914bc
renovate[bot]chore(deps): update dependency @types/node to ^18.19.123 (#10341)eb006db723
renovate[bot]chore(deps): update dependency dotenv to ^16.6.1 (#10342)11e983217e
renovate[bot]chore(deps): update dependency husky to ^9.1.7 (#10344)76f4549a31
renovate[bot]chore(deps): Update dev-non-major (#10357)b61b86f98b
renovate[bot]chore(deps): update dependency yargs to v17.7.2 (#10368)e5076551bb
renovate[bot]chore(deps): update dependency oneline to ^1.0.4 (#10346)52d40cb5ee
renovate[bot]chore(deps): update dependency p-timeout to ^4.1.0 (#10348)8d70bd9e8a
renovate[bot]chore(deps): update dependency pirates to ^4.0.7 (#10349)46f577156d
renovate[bot]chore(deps): update dependency pluralize-esm to ^9.0.5 (#10350)2a1f4c6d99
renovate[bot]chore(deps): update dependency jsdom to ^23.2.0 (#10345)6ad25e08e4
renovate[bot]chore(deps): update dependency resolve.exports to ^2.0.3 (#10352)1ace741c5f
renovate[bot]chore(deps): update dependency serve-handler to ^6.1.6 (#10353)4e333557e2
renovate[bot]chore(deps): update dependency tar to ^6.2.1 (#10355)ee60f30975
renovate[bot]chore(deps): update dependency tar-fs to ^2.1.3 (#10356)e96a0d6030
renovate[bot]chore(deps): update dependency execa to ^2.1.0 (#10343)bfcd4ff5c3
renovate[bot]chore(deps): update dependency open to ^8.4.2 (#10347)374932fb87
renovate[bot]chore(deps): update dependency preferred-pm to ^3.1.4 (#10351)b78f50880e
renovate[bot]chore(deps): update dependency source-map to ^0.7.6 (#10354)ff5494484c
Bjørge Næssfix(ci): add concurrency for release-next job (#10373)87ef7603db
renovate[bot]chore(deps): update dependency @types/node to ^24.3.0 (#10360)fe416193f3
renovate[bot]chore(deps): update dependency @uiw/react-codemirror to ^4.25.1 (#10361)76464a5366
renovate[bot]chore(deps): update dependency @types/node to v20 (#10370)0c146c0f1c
renovate[bot]chore(deps): update dependency async-mutex to ^0.5.0 (#10363)a5a5565f2e
renovate[bot]chore(deps): update dependency react-barcode to ^1.6.1 (#10365)762d5c6a56
renovate[bot]chore(deps): update dependency semver to ^7.7.2 (#10372)0481e08b14
renovate[bot]chore(deps): update dependency glob to ^11.0.3 (#10375)6195e207dc
renovate[bot]chore(deps): update dependency inquirer to ^6.5.2 (#10376)17734071db
renovate[bot]chore(deps): update dependency ora to ^8.2.0 (#10377)d8f3eb3363
renovate[bot]chore(deps): update dependency @sanity/assist to v5 (#10378)ea386942cc
renovate[bot]chore(deps): update dependency @types/node to v22.17.2 (#10371)35a8646a7c
Cody Olsenchore: remove unused @types/* deps (#10379)c5f67fa8f9
renovate[bot]fix(deps): update dependency @portabletext/block-tools to ^3.2.0 (#10297)b50678bd51
renovate[bot]fix(deps): update dependency @portabletext/editor to ^2.3.7 (#10284)213dc369b7
Jordan Lawrencefix: release chips don't need to handle scheduled case (#10374)eaf6359e70
Jordan Lawrencefeat: draft perspective chip copies from published when no draft exists (#10305)2d9c8365ca
Jordan Lawrencefeat: add schedule publish and unpublish noop actions for draft documents (#10287)c1220b3f2f
Bjørge Næssrefactor: remove v3 references and v2 specific handling from cli (#10296)d59c36d73e
squiggler[bot]chore(tests): generate dts tests 🤖 ✨ (#10386)d4a5f7ff39
renovate[bot]fix(deps): update dependency @portabletext/block-tools to ^3.2.1 (#10384)6a1f72614f
renovate[bot]fix(deps): update dependency @portabletext/editor to ^2.3.8 (#10389)60e179c22b
Jordan Lawrencefix: remove unused initialValue parameter from createVersion method (#10391)4278419402
renovate[bot]chore(deps): update dependency @sanity/visual-editing to v3.0.3 (#10393)2d55e877c1
Rupert Dunkfix(codegen): import json5 via default to match ESM entry (#10388)35861c68d7
renovate[bot]fix(deps): Update linters (#10395)763a98d8e7
renovate[bot]chore(deps): update slackapi/slack-github-action action to v2 (#10263)2e1f8a351f
Bjørge Næssrefactor(test): refactor testServerCommand, remove flake (#10380)5e81caf939
RitaDiasrefactor: move useReleaseHistory to use virtualise items (#10249)193b4ea7c2
renovate[bot]chore(deps): update dependency turbo to ^2.5.6 (#10394)cfc2fcca0c
renovate[bot]chore(deps): update dependency @swc-node/register to ^1.11.1 (#10396)81e7564f0e
renovate[bot]chore(deps): update dependency oxlint to ^1.12.0 (#10397)7363ce8d4c
renovate[bot]chore(deps): update actions/download-artifact action to v5 (#10261)76faf4a248
Dain Cilketest(cli): ensure extractManifestSchemaTypes serialize (#9939)d2d131dc78
Pedro Bonaminfix(core): use intent link for comments notification url (#10299)4866d59fd5
squiggler[bot]chore(tests): generate dts tests 🤖 ✨ (#10400)510f13f952
Aug 14, 2025

Sanity Studio v4.4.1

This release includes various improvements and bug fixes.

For the complete changelog with all details, please visit: www.sanity.io/changelog/d134bf5e-4b53-4374-87c9-32ec611da6e0

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
Fred Carlsenrefactor: filter out video assets when exporting media library assets (#10246)2f2f9843a7
Jordan Lawrencechore: adding colon between label and count for release action types (#10282)f0ffe407d2
renovate[bot]chore(deps): update dependency esbuild to v0.25.9 (#10278)b9ece120c2
renovate[bot]fix(deps): update dependency @sanity/export to v4 (#10264)335b8e5428
Jordan Lawrencefix: long release titles in open release to edit banner correctly flexed (#10283)3ba50796a9
Cody Olsenfix: allow v20 in node engines (#10290)73150e9bef
squiggler[bot]chore(deps): dedupe pnpm-lock.yaml (#10292)70b4132066
renovate[bot]fix(deps): update dependency @sanity/export to ^4.0.1 (#10291)6827c96dab
renovate[bot]fix(deps): update dependency @sanity/ui to ^3.0.7 (#10293)e671ffc1be
Aug 13, 2025

Sanity Studio v4.4.0

This release includes various improvements and bug fixes.

For the complete changelog with all details, please visit: www.sanity.io/changelog/8afb730b-2788-48b2-b601-efd3c99ca1e7

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 playwright monorepo to v1.54.2 (#10191)4cba52a143
renovate[bot]fix(deps): update dependency @sanity/presentation-comlink to ^1.0.28 (#10188)ec0c5bff5b
renovate[bot]chore(deps): update dependency sanity-plugin-markdown to v6 (#10193)a86cc8eb50
renovate[bot]fix(deps): Update dev-non-major (#10192)6ba5be68a2
renovate[bot]chore(deps): update dependency sanity-plugin-media to v4 (#10194)866ec52fe1
renovate[bot]chore(deps): update linters to ^8.39.0 (#10198)d6ac5c00bb
Pedro Bonaminfix(structure): render actions menu if sideMenuItems has actions (#10196)62272a81a6
Bjørge Næssfix(bundle-manager): always keep highest version outside ttl (#10197)160a3ee272
squiggler[bot]chore(tests): generate dts tests 🤖 ✨ (#10199)1e10f9f1ff
Bjørge Næssfix(cli): don't coerce sanity version during build/dev (#10190)7330842c38
renovate[bot]fix(deps): update dependency @portabletext/editor to ^2.1.9 (#10202)4aabd89a0f
renovate[bot]chore(deps): update vitest monorepo to ^3.2.4 (#10182)418ba7859b
renovate[bot]fix(deps): update dependency @portabletext/editor to ^2.1.11 (#10204)30a9a705bd
Pedro Bonaminfix(cli): env vars not loading in sanity.cli when using vite callback (#10186)42122dc315
RitaDiasfeat: virtualising release documents table (#10203)1ff9a38696
Bjørge Næsschore(ci): add slack alert for failed release workflows (#10211)388c2dbdc7
renovate[bot]chore(deps): update dependency vite to v7 (#10134)2de38f63ab
Ken Jonesdocs: add curly braces to blueprint projections for upcoming change (#10206)c665a4a9ed
Pedro Bonaminfix(core): allow losing focus inside popover modals, fix scroll in popover issue (#10213)d49b5274d5
renovate[bot]fix(deps): update dependency @portabletext/block-tools to ^2.0.8 (#10200)498a56ddda
renovate[bot]fix(deps): update dependency xstate to ^5.20.2 (#10222)b82b0a6ad1
renovate[bot]chore(deps): update dependency eslint-plugin-oxlint to ^1.11.0 (#10223)0aec901091
renovate[bot]chore(deps): update dependency oxlint to ^1.11.0 (#10224)91b483d8bf
Rupert Dunkfix(sanity): presentation navigation issues and initial value handling (#10207)34fba7d6c4
Bjørge Næssfix: update engines to require node >=22.12.0 (#10227)c1b9fe2b70
renovate[bot]fix(deps): update dependency @portabletext/editor to ^2.3.0 (#10226)4681b77dd0
Rupert Dunkfix(sanity): explicitly unset legacy inspect parameter (#10208)6f636d0bce
renovate[bot]chore(deps): update dependency vite to ^7.1.1 (#10221)4e75ce22bb
renovate[bot]chore(deps): update dependency @sanity/sdk to v2.1.2 (#10231)f6b43178e6
renovate[bot]chore(deps): update dev-non-major (#10232)50b44b921f
Bjørge Næsschore: add auto-updating dev studio (#10235)903e6a5528
renovate[bot]chore(deps): update dependency oxlint to ^1.11.1 (#10234)a5d54baaa3
Pedro Bonaminfeat(util): add support for localized moment tokens (#10240)caf47b656f
Cole Peterschore(cli): bump sanity dep to ^4 for app templates (#10248)866a91928d
Bjørge Næssfix(sanity): add missing v-prefix in link to release tag (#10241)f5e4de78e4
Cody Olsenchore: fix etl script (#10250)37f3a26e81
renovate[bot]chore(deps): update dependency @date-fns/utc to ^2.1.1 (#10252)469807bfe8
renovate[bot]fix(deps): update dependency @sanity/ui to ^3.0.6 (#10245)5a9f4cf59a
renovate[bot]chore(deps): update dependency @sanity/logos to ^2.2.2 (#10230)70a0b61cab
renovate[bot]chore(deps): update dependency @sanity/message-protocol to ^0.17.0 (#10233)7781098e7e
renovate[bot]fix(deps): update dependency @portabletext/editor to ^2.3.3 (#10242)322ab524ba
Pedro Bonaminfix(core): issue with releases default values (#10251)7b8fa2fed0
renovate[bot]fix(deps): update dependency @date-fns/tz to ^1.4.1 (#10253)dcacb4b3a3
renovate[bot]chore(deps): update linters (#10243)b3e3003cc4
renovate[bot]chore(deps): update slackapi/slack-github-action action to v1.27.1 (#10259)1a527cada9
renovate[bot]chore(deps): update actions/checkout action to v5 (#10260)d1a21a80bc
renovate[bot]chore(deps): update dependency sanity-plugin-hotspot-array to v3 (#10262)d38e1a2be5
Pedro Bonaminfix(presentation): send presentation/refresh events for version documents changes (#10255)0e0b8deda3
renovate[bot]fix(deps): update dependency @portabletext/block-tools to v3 (#10256)4672c48f13
Cody Olsenchore: prevent typescript 5.9 from sneaking in before we're ready (#10266)8a8c66cda4
renovate[bot]fix(deps): update dependency @sanity/export to ^3.45.3 (#10244)084a599763
Pedro Bonaminfix(cli): updates dev action to trigger async work while showing spinner (#10268)3b2943838a
Pedro Bonaminchore(cli): skip sanity tokens tests (#10276)15106bdaa9
Jordan Lawrencefeat: adding chips to release summary to show count of release actions (#10237)62af6fc731
renovate[bot]chore(deps): update dev-non-major (#10258)d2221b3d80
renovate[bot]chore(deps): update dependency vite to ^7.1.2 (#10257)3f87e29763
renovate[bot]chore(deps): update dependency @sanity/code-input to v6 (#10272)62e7d35c1c
renovate[bot]chore(deps): update dependency observable-callback to ^1.0.3 (#10269)4c6ad96ccc
renovate[bot]chore(deps): update dependency oxlint to ^1.11.2 (#10270)625f3e2f82
renovate[bot]chore(deps): update dependency @mux/mux-player-react to ^3.5.3 (#10273)4bb2571390
renovate[bot]chore(deps): update dependency tsx to ^4.20.4 (#10271)39cd676287
renovate[bot]chore(deps): lock file maintenance (#10265)af81a4585f
Ashfix(sanity): unexpected type narrowing when array passed to defineConfig (#10275)93fed00da0
Binoy Patelfeat(cli): choses a new port if dev server is conflicted for apps (#10212)00369ec4db
Bjørge Næssfix(cli): gracefully handle version check errors in sanity dev (#10279)d2233208e3
Aug 5, 2025

Sanity Studio v4.3.0

This release includes various improvements and bug fixes.

For the complete changelog with all details, please visit: www.sanity.io/changelog/0c2fb17a-40dd-4c65-a0d7-71f657873dd7

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
Cody Olsenfix: workaround rollup@4.46.0 regression (#10103)a3c44cea20
Dave Sewellfix(cli): Add missing flag to blueprints add example (#10089)10c001aa5e
renovate[bot]fix(deps): update dependency @sanity/ui to ^3.0.3 (#10098)05cd42ccc9
Pedro Bonaminfeat(core): allow all fields group customizations (#10094)f3237e1203
renovate[bot]fix(deps): update dependency @sanity/client to ^7.8.1 (#10102)8951cd2859
Bjørge Næssfix(cli): remove workspace version specifier (#10109)6a84ff7593
Bjørge Næssfix(ci): set correct version for next packages and publish all packages in concert (#10108)92b13c9683
Jordan Lawrencechore: enable manifest update with tags in production (#10040)b16b66a096
Bjørge Næssfix(ci): add workflow to tag as latest (#10110)10db838c7c
Bjørge Næssfix(ci): enable tag latest workflow for production (#10112)8268d23a11
Cody Olsenfix: unpin rollup (#10113)48400c4433
Ryan Bonialfix(app server): stop spinner before printing url (#10114)84e7eb6ad0
Bjørge Næssfix(ci): set SANITY_INTERNAL_ENV=staging when building esm bundles for staging (#10118)b75710805b
Jordan Lawrencechore(bundle-manager): retaining all majors in tag version manifest (#10063)3a5ed94230
renovate[bot]fix(deps): update dependency @sanity/ui to ^3.0.5 (#10115)82703e1f60
Bjørge Næssfix(ci): rewrite tagged version for all packages (#10120)31cddbb064
Bjørge Næssfix(ci): tag latest in production manifest (#10122)9e7d17ca6a
renovate[bot]chore(deps): update dependency @sanity/visual-editing to v3 (#10105)32956fe4ad
renovate[bot]chore(deps): update dev-non-major (#10128)9eab7fc9c4
renovate[bot]fix(deps): update dependency framer-motion to ^12.23.12 (#10131)256e33493c
squiggler[bot]chore(tests): generate dts tests 🤖 ✨ (#10136)b6cb89a203
Cody Olsenchore(ci): fix automerge (#10139)fe37fe9fb6
renovate[bot]chore(deps): update dependency @babel/types to ^7.28.2 (#10123)ae13a2168e
renovate[bot]chore(deps): update dependency pkg-pr-new to ^0.0.54 (#10126)b1c8e5521e
renovate[bot]chore(deps): update dependency eslint-plugin-unicorn to v60 (#10133)0c95c8bac9
renovate[bot]chore(deps): update dependency polished to ^4.3.1 (#10127)4bbccdce01
renovate[bot]chore(deps): update dependency debug to ^4.4.1 (#10125)39640da04b
renovate[bot]chore(deps): update dependency next-sanity to ^10.0.6 (#10137)8f6f397339
renovate[bot]chore(deps): update dependency @tanstack/react-virtual to ^3.13.12 (#10124)11b1b3aafd
renovate[bot]fix(deps): Update CodeMirror (#10130)97da8568df
renovate[bot]chore(deps): update dependency @sanity/runtime-cli to ^10.1.2 (#10132)23cff2ec50
renovate[bot]chore(deps): update linters (#10143)6c26a6d609
renovate[bot]chore(deps): update dependency oxlint to ^1.9.0 (#10142)7f0f813c05
renovate[bot]chore(deps): update dependency @swc-node/register to ^1.10.10 (#10145)ebb6e80b03
renovate[bot]chore(deps): update dependency @types/babel__generator to ^7.27.0 (#10147)a2c0df2d34
renovate[bot]chore(deps): update dependency @types/babel__traverse to ^7.20.7 (#10148)101519da6a
renovate[bot]chore(deps): update dependency @types/lodash to ^4.17.20 (#10149)1df7b24f7a
renovate[bot]chore(deps): update dependency @types/lodash-es to ^4.17.12 (#10150)27267fc586
Bjørge Næssfix(cli): mark @sanity/ui@3 as supported (#10154)6030a93928
Ashfix(sanity): ensure useDocumentForm uses provided release id1abac9f684
Pedro Bonaminchore(core): update pin button tooltips text (#10092)24f891c5e4
Cody Olsenchore: only override ui v3 for e2e tests (#10156)9d871ef05f
Cody Olsenfix: upgrade react-is to 19 (#10141)d7acd6cf54
Cody Olsenchore: remove @sanity/sdk dts check exception (#9984)3287bc85d0
Bjørge Næssrefactor(sanity): improve UI when new version is available (#10158)ce3aff18da
Bjørge Næssfix(sanity): hide new version if up to date (#10165)acc988f7e3
renovate[bot]chore(deps): update dependency @testing-library/jest-dom to ^6.6.4 (#10146)60606fcf2b
renovate[bot]fix(deps): update dependency @sanity/insert-menu to v2.0.1 (#10160)42c43e31c7
Rupert Dunkchore(presentation): correct origin and preview @deprecated comments (#10111)d32cad28cb
Bjørge Næssrefactor(ci): change version format for pkg-pr-new packages (#10166)fd51280061
renovate[bot]fix(deps): update dependency @sanity/presentation-comlink to ^1.0.27 (#10162)842bd9066e
renovate[bot]fix(deps): update dependency @portabletext/block-tools to ^2.0.2 (#10167)c75c002b59
squiggler[bot]chore(tests): generate dts tests 🤖 ✨ (#10171)6d1e198acb
renovate[bot]fix(deps): update dependency @portabletext/editor to ^2.1.2 (#10168)ced80f4177
renovate[bot]chore(deps): update dependency @sanity/visual-editing-csm to ^2.0.23 (#10159)6b81dbb4bc
renovate[bot]chore(deps): update react monorepo (#10129)3003c0fed1
renovate[bot]fix(deps): update dependency @portabletext/editor to ^2.1.4 (#10173)bdff34c72d
renovate[bot]fix(deps): update dependency @portabletext/block-tools to ^2.0.5 (#10172)7ca6103894
Pedro Bonaminchore(cli): update start message from v3 to v4 (#10180)5d13c73332
Bjørge Næssfix(sanity): remove own presence avatar from list of users (#10179)0657751122
renovate[bot]fix(deps): update dependency @portabletext/editor to ^2.1.7 (#10177)d30c78120e
renovate[bot]fix(deps): update dependency @sanity/client to ^7.8.2 (#10181)f63be89404
renovate[bot]fix(deps): Update dev-non-major (#10185)7a5255e203
renovate[bot]chore(deps): update pnpm to v10.14.0 (#10184)1be0a8274a
renovate[bot]chore(deps): update dependency @sanity/google-maps-input to ^4.2.0 (#10183)f4a436e374
James Warnerfeat(core): media library full app dialog and selection validation (#10153)57b7db14bf
RitaDiasfix: issue where a slimple slug in an array was auto closing when focusing on it (#10175)dfb704dd17
Bjørge Næssrefactor(sanity): clean up version resolution logic (#10176)447ce73b06
Bjørge Næssrefactor(sanity): improve github link from version dialog (#10178)f368ce5974
Jul 29, 2025

Sanity Studio v4.2.0

This release includes various improvements and bug fixes.

For the complete changelog with all details, please visit: https://www.sanity.io/docs/changelog/7dd374d4-1037-4f42-bad5-7ee7d53ee935#a6d73a4dacab

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.

Latest
v5.21.0
Tracking Since
Feb 20, 2025
Last fetched Apr 19, 2026